我想添加另一个函数以从CanJs模型获取结果
我有这样的事情:
VideomakerModel = can.Model({
id:'ID',
findAll: 'GET /videomakers/',
findNear: function( params ){
return $.post("/get_near_videomakers/",
{address:params.address},
undefined ,"json")
}
},{});
VideomakerModel.findNear({address : "Milan"}, function(videomakers) {
var myList = new VideomakerControl($('#accordionVm'), {
videomakers : videomakers,
view: 'videomakersList'
});
});
如果我将方法命名为findAll,它将正常工作,
否则将其命名为findNear,它永远不会到达回调
我应该以某种方式扩展MODEL吗?有没有一种方法可以添加类似FindAll的功能?
非常感谢你
最佳答案
CanJS仅将转换添加到标准findOne
,findAll
等模型方法的Model实例中。您必须通过VideoMaker.model
(对于单个项目)或VideoMaker.models
(对于多个项目)运行结果,在其他实现中自己做:
VideomakerModel = can.Model({
id:'ID',
findAll: 'GET /videomakers/',
findNear: function( params ) {
var self = this;
return $.post("/get_near_videomakers/", {
address:params.address
}, undefined ,"json").then(function(data) {
return self.model(data);
});
}
},{});