私は現在アプリに取り組んでいます。グループを作成すると、保存機能がうまく機能し、モデルがコレクションに追加され、データベースに保存されますが、作成したばかりのグループを編集したい場合は、保存を押すとデータが編集されて PUT リクエストが起動される代わりに、新しいモデルが作成されます (および POST リクエスト)。これが私の保存機能です。既存のモデルを編集するときに PUT リクエストを発行しない理由はありますか?
GroupModalHeaderView.prototype.save = function(e) {
var $collection, $this;
if (e) {
e.preventDefault();
}
$this = this;
if (this.$("#group-name").val() !== "") {
$collection = this.collection;
if (this.model.isNew()) {
this.collection.add(this.model);
}
return this.model.save({ name: this.$("#group-name").val()}, {
async: false,
wait: true,
success: function() {
var modelID = $this.model.get('id');
return this.modal = new app.GroupModalView({
model: $this.collection.get(modelID),
collection: $this.collection
});
}
});
}
};
これは私のモデルのデフォルトです。
Group.prototype.defaults = {
user_id: "",
name: "New Group",
email: "",
url: "",
telephone: "",
mobile: "",
fax: "",
people: ""
};
this.model
保存前のconsole.logはこちら、
Group {cid: "c116", attributes: Object, _changing: false, _previousAttributes: Object, changed: Object…}
_changing: false
_events: Object
_pending: false
_previousAttributes: Object
email: ""
fax: ""
mobile: ""
name: "New Group"
people: ""
telephone: ""
url: ""
user_id: ""
wait: true
__proto__: Object
attributes: Object
changed: Object
cid: "c116"
collection: GroupCollection
id: 189
__proto__: ctor