我想在sailsjs中查询mongodb . 这是我的数据库的结构
{
"users": [
"52ed09e1d015533c124015d5",
"52ed4bc75ece1fb013fed7f5"
],
"user_msgs": [
{
"sender": "52ed09e1d015533c124015d5",
"sendTo": "52ed4bc75ece1fb013fed7f5",
"msg": "ss"
}
],
"createdAt": ISODate("2014-02-06T16:12:17.751Z"),
"updatedAt": ISODate("2014-02-06T16:12:17.751Z"),
"_id": ObjectID("52f3b461f46da23c111582f6")
}
我想搜索那些匹配数组的“用户”
[
"52ed09e1d015533c124015d5",
"52ed4bc75ece1fb013fed7f5"
]
Message.find({user: ["52ed09e1d015533c124015d5","52ed4bc75ece1fb013fed7f5"]})
此查询返回包含1或2的所有对象..但我只需要那些与1和2完全匹配的对象,我也尝试过$ all,等等 . 但是没有用,请告诉我如何用sailsjs支持的syntex编写查询获得这些用户
2 回答
您需要使用本机Mongo适配器:
虽然上面的代码可能只是为了吸引那些用户 . 我认为更好的解决方案是在您的消息模型中定义您的用户ID .
我会将以下属性添加到您的消息模型中:
现在,您可以使用以下查询提高查询效率:
这是我要走的路线 .