Hey forum,
I want to do this query on SERVER:
return Meteor.users.find({ _id: { $in: recipients } }, {
fields: {
username: 1
}
});
But i have this array witch store this ids:
I pass the array parameter (recipients) to the method, but i think i cant do that because it is not well formated.
What I need to do before pass the Recipients array?
Thx
Where is the object that you posted coming from? You will need to pass in something like myObject.recipients
, so it would look like:
let recipients = myObject.recipients;
return Meteor.users.find({ _id: { $in: recipients } }, {
fields: {
username: 1
}
});
Yes, I m passing:
var recipients = message.recipients;
before I did the findOne (Message)
Well, your query looks well-formed to me, then. Are you sure it’s not a data problem? Can you pass a hard-coded array that you know should work?
2 Likes
in order to use $in this is the format you need to use
return Meteor.users.find( { _id : { $in: [ 5, 15 ] } } )
so your recipients needs to be an array.
ffxsam
June 22, 2016, 11:51pm
6
I don’t understand what the actual issue is. Is there an error of some sort? Why can’t you just pass the recipients
array into a method and run the query?
praxie
August 23, 2016, 7:19pm
7
What the hell is going on? That’s not funny…
1 Like
Perhaps Use findOne, and or create an array object and place each value in it.
praxie
August 25, 2016, 11:14am
9
Viewmodel wraps arrays into reactive arrays.
fileIds.array()
works fine. But it’s my case.