1

我想添加另一个函数以从CanJs模型中获取结果

我有这样的东西:

VideomakerModel=可以。型号({id:“id”,findAll:'获取/视频制作人/',findNear:函数(params){return$.post(“/get_near_videomakers/”,{地址:params.address},未定义,“json”)}},{});视频制作人Model.findNear({地址:“米兰”},功能(视频制作人){var myList=新的VideomakerControl($('#accordionVm'){视频制作人:视频制作人,view:'videomakersList'});});

如果我将方法命名为find,那么它可以正常工作,否则将其命名为findNear它永远不会到达回调

我应该以某种方式扩展MODEL吗??有办法添加像FindAll这样的函数吗?

非常感谢你

1
  • 向上投票以抵消向下投票。没有给出否决的理由,这是一个合理的问题。 评论 2014年10月20日17:35

2个答案2

重置为默认值
2

CanJS仅将转换添加到标准的Model实例中找到一个,查找全部等建模方法。您必须在额外的实现中自己完成这项工作,方法是通过运行结果VideoMaker模型(对于单个项目)或VideoMaker.型号(对于多个项目):

VideomakerModel=可以。型号({id:“id”,findAll:“获取/视频制作者/”,findNear:函数(参数){var self=此;return$.post(“/get_near_videomakers/”{地址:params.address},未定义,“json”).then(函数(数据){返回self.model(数据);});}},{});
1
  • 你好,Daff,当我用以下命令调用函数时:VideomakerModel.findNear({address:address},function(videomakers){videomakerControl=new videomakerControl($('#accordionVm'),{videomakers:videomakers,view:'videomakersList'});数据正常,但它从不触发回调,知道为什么吗?谢谢您! 评论 2013年11月10日9:13
0

如果我理解这个问题,那么有必要这样做:

VideomakerModel=可以。型号({id:“id”,findAll:'获取/视频制作人/'}, {findNear:函数(选项,成功){加拿大阿贾克斯({url:“/get_near_videomakers/”,类型:'POST',数据:选项,成功:成功})}  })var myList=新的VideomakerControl({});myList.findNear({address:params.address},函数(resulrRequest){//成功} )

你的答案

单击“发布您的答案”,表示您同意我们的服务条款并确认您已阅读我们的隐私政策.

不是你想要的答案吗?浏览已标记的其他问题问你自己的问题.