我有一个从服务器获取数据的骨干模型,
var Post = Backbone.Model.extend({
url:"api/post"
});
在获取它时返回并填充模型,如下所示
{
by: 1,
vote: 1,
text: "I am a post"
}
我有一个列表视图,将这些项呈现为以下html
<span className='vote'>
<i className='up-vote'></i>
1
<i className='down-vote'></i>
</span>
我想要做的是当用户点击upvote图标时我想向端点如下的服务器发出 PUT 请求
"api/post/:id/vote"
我正在努力的是,因为投票属性是Post模型的一部分,我如何使用现有的Post模型启动到这个不同的端点,因为我将投票属性作为Post模型的一部分。
答案 0 :(得分:1)
我认为你有两个选择:
第二个选项的视图代码如下:
events : {
'click #up-vote' : 'sendPutRequest',
},
sendPutRequest: function() {
$.ajax({
url: 'api/post/' + this.model.get('id') + '/vote',
type: 'PUT',
contentType: 'application/json',
data: JSON.stringify(this.model.toJSON()),
success: function(result) {
// Do something with the result
}
});
}