gpt4 book ai didi

javascript - Backbone : Adding a model to a collection from a collection view?

转载 作者:可可西里 更新时间:2023-11-01 01:28:14 25 4
gpt4 key购买 nike

我有一些代码,我希望 NoteCollectionView 向 NoteCollection 添加新的 Note。这是由 NoteCollectionView 中的函数 newNote 触发的:

newNote: function(data) {
var note = new Note(data);
this.collection.add(note);
},

我对主干还是很陌生,我想确保它与服务器同步。我担心的是:

1) 将此注释简单地添加到集合中是否会从服务器触发 save(),并使用服务器提供的 ID 更新模型?或者,

2) 如果服务器没有更新我的模型并给我一个实际的 ID,我该如何使用 note.save() 保存模型并从服务器取回一个 ID?

最佳答案

要解决您的第一个问题,不,.add 不会触发对服务器的任何类型的调用;它只会将模型添加到集合中。

但是,您确实有几个选择。一种是创建新的笔记模型,将其保存到数据库中,然后将其添加到集合中:

newNote: function(data) {
var note = new Note(data);
note.save();
this.collection.add(note);
}

第二个选项是简单地使用 Backbone's collection.create method .给它一个属性的散列,它会

  1. 创建模型
  2. 保存到数据库
  3. 将其加入收藏

一气呵成,像这样:

newNote: function(data) {
return this.collection.create(data);
}

collection.create 还返回新创建的模型,如我上面的 return 语句所示。

关于javascript - Backbone : Adding a model to a collection from a collection view?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11438403/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com