当get请求调用此api时,搜索键通过id参数动态传入。
我们正在查找将Later_Today_P属性设置为true的对象。
示例mongo架构:
{ "user_logged_email" : "liblibraryzone@gmail.com",
"Counter_P" : false,
"Negotiation_Willing_P" : false,
"Grey_P" : false,
"Left_VM_P" : false,
"Later_Today_P" : false,
"No_Updated_P" : false,
}
这很有效:
exports.Later_Today_P_prioritySearch = function(req, res, next, id) {
var id_2 = id;
var dynamicId={};
dynamicId[id_2]=true;
Property.find(dynamicId).exec(function(err, properties) {
但现在我需要抓取Later_Today_P设置为true的对象以及user_logged_email =" libraryemail@gmail.com"
以下没有工作。
Property.find({dynamicId, user_logged_email : "libraryemail@gmail.com" }).exec(function(err, properties) {
尝试1:
出于某种原因,数据显示出来但是搞砸了。
var id_2 = id;
var dynamicId={};
dynamicId[id_2]=true;
var id_3 = "user_logged_email";
var dynamicEmail={};
dynamicEmail[id_3]="libertytrustgroupllc@gmail.com";
//这有效
Property.find(dynamicEmail).exec(function(err, properties) {
//这有效 Property.find(dynamicId).exec(function(err,properties){
//但由于某些原因,这不起作用。
Property.find(dynamicEmail, dynamicId).exec(function(err, properties) {
答案 0 :(得分:0)
查询过滤器不正确。
像
这样的东西var id_2=id;
var filter={};
filter[id_2]=true;
filter["user_logged_email"]="libraryemail@gmail.com";
这将导致{ "Later_Today_P" : true, "user_logged_email" : "libraryemail@gmail.com" }
继续使用相同的查询:
Property.find(filter).exec(function(err, properties) {