0
我有一個熊模型,我用它與藍圖REST。利用藍圖/水線findWhere裏面的自定義控制器
// api/models/Bear.js
module.exports = {
attributes: {
name: {
type: 'string',
required: true
}
}
};
我想執行一些計算基於完全相同的審覈規定爲標準findWhere
熊。事實上,我希望能夠請求
GET /bear/details
正是就像我要求
GET /bear
所以,我可以找到熊細節:
- 複雜的查詢像
?where={}
- 如
?name=
- 但還發送JSON在身體像
{name: ''}
- 或者甚至使用
?limit=
等
控制器看起來是這樣的:
// api/controllers/BearController.js
module.exports = {
getDetails: function (req, res) {
Bear.find().exec(function (err, bears){
if (err) return res.serverError(err);
var bearsDetails = _.map(bears, function(bear) {
return {
id: bear.id,
nameLength: bear.name.length,
reversedName: bear.split('').reverse().join('')
};
});
return res.json(bearsDetails);
});
}
};
而且我有一個看起來像這樣
// config/routes.js
module.exports.routes = {
'get /bear/details': 'BearController.getDetails'
}
自定義路線
=>如何在findWhere
請求中自動準確地過濾模型,在自定義控制器中,無需重新發明輪子?