我正在尝试为sailsjs v1模型创建一个蓝图查询。
该模型是一个BlogPost,其中包含2个“选项”。一个是目标,另一个是状态。
如果目标是“网站”且状态为“已发布”,则查询应返回,否则为否。我使用的是Sails(蓝图)提供的默认REST路由,如果我尝试查找所有路由,一切都会正常运行。但是,如果我尝试通过ID查找某人...我什至无法找回状态为“未发布”的人。
这是我在blueprint.js parseBlueprintOptions
->
parseBlueprintOptions: function (req) {
var queryOptions = req._sails.hooks.blueprints.parseBlueprintOptions(req);
if (queryOptions.using === 'blogpost') {
if (req.options.blueprintAction === 'create') {
queryOptions.newRecord.user_id = req.session.user.id;
return queryOptions;
} else if (req.options.blueprintAction === 'update') {
queryOptions.criteria.where.user_id = req.session.user.id;
queryOptions.valuesToSet.user_id = req.session.user.id;
return queryOptions;
} else {
if (req.session.administrator) {
return queryOptions;
} else {
queryOptions.criteria.where.blogpost_target = 'Site';
queryOptions.criteria.where.blogpost_status = 'Published';
console.log(queryOptions);
return queryOptions;
}
}
}
}
};
关于为何未为findOne
触发查询的任何提示?如我所说,无论状态/目标如何,它都会返回。
答案 0 :(得分:0)
嘿,“查找”返回对象 数组,而“查找”仅返回对象。我想因此它行不通!