Ben belgelerin bina koleksiyonları için basit bir araca sahip ve daha sonra otomatik olarak ExpressJS üstünde yazılı, EPUB veya LaTeX oluşturma için bunları biçimlendirme başarısız. Coffeescript kullanıyorum, eğer önemliyse (şüpheliyim). Mongoose kullanmaGelincik: Nesne Karşılaştırmalar tutarsız
, şu var: "Bunlar: Offrefs o kadar çünkü mantıklı koleksiyonlar oluşturmak için, diğer bağlayıcı bazı bağlayıcılar içermesi mümkün istiyorum çünkü neyi anlatır belirtmez
DocumentSchema = new Schema
title: String
Offrefs = new Schema
ref: { type: ObjectId }
isa: String
BinderSchema = new Schema
title: String
contains: [Offrefs]
yazıcı için, "" Bunlar, web için, "" Bunlar sadece web vardır, "vb. (Ben tüm çeşitli şeyler dışarı sıyrıldı ettik.)
Ne yazık ki, geri çağrılan sorgulara girdim nesneleri
(story._id == offref.ref) -> True
Ve ikisi de aynı görünüyor. Ama:
(binder._id == offref.ref) -> False
(String(binder._id) == String(offref.ref)) -> True
Ve son iki iki referansın görsel karşılaştırma, bunlar aynı kimlik numarası fakat ObjectId
nesneler doğru karşılaştırın yoktur. İstemediğim
Ben verilerin ağaçlara bu karmaşık nesneleri dönüştürme ediyorum kuvvetli olasılıkları olan sürekli dize dönüşümleri yapmak zorunda. Ağaç ilişkileri herhangi bir DB'de bir ayıdır; MongoDB'de zor olmamalılar.
nasıl MongoDB içinde Nesne Kimliği karşılaştırmalar yapıyorlar?
Yay, belgesiz özellikler. – peterjwest
Yani bu mongoose.Schema.Types.ObjectID ile aynı değil mi? http://mongoosejs.com/docs/api.html#schema-objectid-js – peterjwest
Hakkı @peterjwest, 'mongoose.Schema.Types.ObjectId' gerçekten: Onların belgeler sadece yöntem 'otomatik' sahip olduğunu ima Şema tanımlarında alan tipi meta veri olarak kullanmak için. – JohnnyHK