Parece que você está tentando experimentar a nova funcionalidade de preenchimento no Mongoose.
Usando seu exemplo acima:
var Schema = mongoose.Schema,
ObjectId = Schema.ObjectId;
SubdomainSchema = new Schema
name : String
CustphoneSchema = new Schema
phone : String
subdomain : { type: ObjectId, ref: 'SubdomainSchema' }
O
subdomain
campo será é atualizado com um '_id' como:var newSubdomain = new SubdomainSchema({name: 'Example Domain'})
newSubdomain.save()
var newCustphone = new CustphoneSchema({phone: '123-456-7890', subdomain: newSubdomain._id})
newCustphone.save()
Para realmente obter dados do
subdomain
campo você terá que usar a sintaxe de consulta um pouco mais complexa:CustphoneSchema.findOne({}).populate('subdomain').exec(function(err, custPhone) {
// Your callback code where you can access subdomain directly through custPhone.subdomain.name
})