SORU
18 EKİM 2011, Salı


Node.js - Firavun faresi ile İlişkiler Oluşturarak

2 Şemalar var, Custphone Subdomain. Custphone belongs_to Subdomain Subdomain has_many Custphones.

Sorun ilişki Gelincik kullanarak oluşturma. Amacım yapmaktır: custphone.alt ve Custphone ait olduğu etki alanı.

Benim şemalarında var:

SubdomainSchema = new Schema
    name : String

CustphoneSchema = new Schema
    phone : String
    subdomain  : [SubdomainSchema]

Custphone sonucu yazdırırken.

{ _id: 4e9bc59b01c642bf4a00002d,
  subdomain: [] }

Custphone sonucu ne zaman MongoDB {"$oid": "4e9b532b01c642bf4a000003"} vardır.

custphone.subdomain ve custphone en alt nesne almak istiyorum.

CEVAP
18 EKİM 2011, Salı


Yeni populate işlevi Firavun faresi olarak denemek için arıyoruz gibi geliyor.

Yukarıdaki örneği kullanarak:

var Schema = mongoose.Schema,
    ObjectId = Schema.ObjectId;

SubdomainSchema = new Schema
    name : String

CustphoneSchema = new Schema
    phone : String
    subdomain  : { type: ObjectId, ref: 'SubdomainSchema' }

subdomain alan 'gibi: . _ıd güncellenen olacak

var newSubdomain = new SubdomainSchema({name: 'Example Domain'})
newSubdomain.save()

var newCustphone = new CustphoneSchema({phone: '123-456-7890', subdomain: newSubdomain._id})
newCustphone.save()

Aslında biraz daha karmaşık bir sorgu sözdizimi kullanmak zorunda kalacaksın subdomain sahadan veri almak için:

CustphoneSchema.findOne({}).populate('subdomain').exec(function(err, custPhone) { 
// Your callback code where you can access subdomain directly through custPhone.subdomain.name 
})

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Mr. H

    Mr. H

    1 Temmuz 2012
  • picster

    picster

    20 NİSAN 2006
  • Trevor Eckhart

    Trevor Eckha

    19 Aralık 2009