Mongo Model.find条件不工作
Posted
技术标签:
【中文标题】Mongo Model.find条件不工作【英文标题】:Mongo Model.find with condition not working 【发布时间】:2017-07-10 22:13:01 【问题描述】:MongoDb:find 方法中的条件不起作用,未获取任何记录
我在我的应用程序中使用猫鼬,
AppUser.find('applicationId' : '58abf9bdc3aa0f1b0b2e3c85', function (err, obj)
if(err)
console.log(err);
else
console.log(obj);
);
但在查找中使用无条件,工作正常:AppUser.find(, function (err, obj)...
以下是我的架构示例:
还在 applicationId 字段中设置了引用
【问题讨论】:
你试过AppUser.find('applicationId': '58abf9bdc3aa0f1b0b2e3c85')
,而不是AppUser.find('applicationId', '58abf9bdc3aa0f1b0b2e3c85'
?
我会尝试的,它被错误地放在我的问题中
ya AppUser 是我的收藏对象
我需要显示所有匹配 applicationid 的记录,然后我将如何使用 findone
我发布了一个适用于我的本地答案。这会给您带来预期的结果吗?
【参考方案1】:
你需要拨打toArray
就可以了:
AppUser.find('applicationId' : '58abf9bdc3aa0f1b0b2e3c85').toArray(function(err, docs)
if(err)
console.log(err);
else
console.log(docs)
)
【讨论】:
这个toArray的目的是什么?collection.find()
返回error
和cursor
。要将cursor
转换为文档数组,您可以调用toArray()
【参考方案2】:
在哪里使用
AppUser.find().where(applicationId:'58abf9bdc3aa0f1b0b2e3c85').exec(function(err, obj)
if(err)
console.log(err);
else
console.log(obj);
);
【讨论】:
以上是关于Mongo Model.find条件不工作的主要内容,如果未能解决你的问题,请参考以下文章
php Yii2 model :: find()具有默认的WHERE条件