İstemci tarafında Meteor koleksiyonundaki bir dizinin içindeki belirli bir öğeyi sorgulamaya çalışıyorum, ancak Minimongo $ operatörünü desteklemiyor. Sorgumu filtrelemek için bir alternatif var mı?
Benim koleksiyonu bu gibi yapılandırılmıştır: Ben id "foo" ile dizide sadece nesnesi döndüren bir sorgu yazmaya çalışıyorum
{
"userID": "abc123",
"array": [
{
"id": "foo",
"propA": "x",
"propB": "y"
},
{
"id": "bar",
"propA": "a",
"propB": "b"
}
]
}
. Mongo olarak, bu sorgu bu olacaktır: Bu bir hata atar böylece
collection.find({
"userID": "abc123",
"array.id": "foo"
}, {
"array.$": 1
});
Ancak Minimongo projeksiyonlarda $ operatörü desteklemez. Benzer şekilde, $ elemMatch kullanarak yapılandırılmış sorgular denedim ve
solution described here'u denedim ama ne yapmaya çalıştığımı başaramıyor.
Minimongo ile bu dizideki bir öğe için sorgulamanın alternatif bir yolu var mı?
Aslında find(). Fetch() kullandım ve tam olarak aradığım şeyi yaptım. Cevabı düzenlerseniz, doğru bir şekilde işaretleyeceğim. –
@JoshVickerson Önerilen düzenlemelere bir göz atın. Tek veya çok sayıda belgede bir öğe aradığınız hâlâ açık değil. –
Tek bir belgenin içinde bir öğe arıyorum. Benim kullanım durumumda, userId benzersiz olması garantilidir, bu nedenle bu bulgunun yalnızca bir belge ile eşleşmesi gerekir. O zaman bu belgedeki diziden tek bir öğeye ihtiyacım var. –