Backbone.js中的 PUT 和 POST 请求



我还有另一个与PUT和POST请求有关的问题。所以,这里我有一个表单,其中包含以下字段:"名称"和"链接"。

提交该表单后,我无法将该表单发布到服务器.model.save();

另外,我如何理解模型何时调用 POST 以及何时调用 PUT 请求?由于我的 api 响应中没有任何"id"属性,所以我的模型也没有任何 id。

那么,如何在单击"提交"按钮时将表单字段值作为 POST 请求传递呢?

另外,有没有办法调用请求:例如:如果我点击表单的"更新"按钮,我将从我的模型中调用一个函数

updateModel:function(options){
this.update("update","/messages",[options])
}

或者 get 请求可以像这样阅读

getModel:function(options){
this.update("read","/messages",[options])
}

save 方法将根据 isNew() 的返回值确定是 POST 还是 PUT 。此方法通常只检查正在填充的id。您可以覆盖它以使用其他指标。

您可以在提交时将表单字段值直接传递到保存方法中。像这样:

//In your view
events : {"submit" : "onSubmit"},
onSubmit : function(e) {
  e.preventDefault();
  this.model.save({name: this.$("#name").val()}, {
    success : function (newModel) { /* Do something here. */ }
  });
}

另一种选择是使用像Backbone.Modelbinder这样的库来处理 DOM 和模型之间的同步。

不需要在模型上定义这些新方法。相反,您应该在模型或相应的控制器上定义适当的url方法。然后,您可以使用正常的fetchsave方法来处理获取/更新。

相关内容

  • 没有找到相关文章

最新更新