如果你想使用 Sails 模型 api,你可以覆盖控制器中的蓝图方法。
所以要覆盖User 模型,在UserController.js 中创建以下函数:
find, create, update, destroy
find 将覆盖 'get api/v1/user'
create 将覆盖 'post api/v1/user'
update 将覆盖 'put api/v1/user'
destroy 将覆盖 'delete api/v1/user'
进入控制器后,您可以像这样在Mongo 上运行native 查询:
在 UserControllr.js 中
find: function (req, res) {
var packet = req.params.all();
// packet now has all url and posted parameters
User.native(function (err, UserCollection) {
if(err) {
//handle error
}
else {
// here you can run any native mongo Query using UserCollection
// eg:
UserCollection.aggregate(
{"$match": {"gender": "Male"} },
{"$group": { "_id": "$socialNetwork", "count": {"$sum":1} } },
function (err, results) {
//do stuff with results
})
}
})
}
希望这会有所帮助。