这总体上是一个具体的问题,但通常我想知道所有可能性是否实际上是可能的。
目前我正在尝试"检测"当模型/集合运行它的.save()
函数时,从parse
动作说出PUT / POST。我的主要用例是当用户触发保存时我想要显示"成功"或"错误"消息分别。但只有在保存即PUT或POST时。但是,我尝试的所有内容都会在最初获取数据时显示任一消息。
任何人都知道如何在不侵入主干方法的情况下妥善对待这个问题?
答案 0 :(得分:0)
我真的不了解用例不做的事情:
onSaveEvent:
this.model.save().done(..).fail(..)
(因为你倾向于知道模型已经存在,因此它将是一个put或patch)
无论如何save
使用sync
字符串调用method
作为第一个arg:
var methodMap = {
'create': 'POST', <-- this
'update': 'PUT', <-- this
'patch': 'PATCH', <-- this
'delete': 'DELETE',
'read': 'GET'
};
如果模型是新的(它没有id),它只会执行POST。 Backbone使用isNew
方法,因此:
if (!model.isNew()) {
// it's one you're interested in
}
这是回答你的问题还是我误解了?