把模型添加到集合里再更新到数据库 - create

0
视频
0
完成
0%
进度
0
分钟
0
完成
0%
进度

新建一个模型,再把这个模型保存到数据库里面,再把它添加到某个集合里。这些动作,Backbone 提供了一个简便的方法,可以使用集合的 create 方法。

下面,我们一起去试试这个方法 ...

打开浏览器 ... 先去新建一个集合 ..

var noteCollection = new NoteCollection

再用 fetch 方法,从服务端那里提取模型到这个集合里面 ..

noteCollection.fetch()

可以先查看一下这个集合 ...

noteCollection .

现在,这里,一共有 x 个模型 ... 下面, 我们再去调用这个集合的 create 方法 .. 在这个方法里,可以直接去设置一下要创建的模型里面的属性,还有对应的值 ...

noteCollection.create({title: '下礼拜六是老爸生日'})

回车 ... 会立即返回这个新创建的模型 ...

再查看一下 noteCollection 这个集合 ...

noteCollection

在 models 属性里面,我们可以找到刚才添加进来的模型 ...

再打开数据库看一下 ...

刚才用 create 方法创建的模型,也添加到了数据库里面 ...

这个 create 方法,还有一些选项 ... 比如,我们可以把 wait 选项设置成 true .. 这样,会在服务端做出响应以后,再把模型添加到集合里面 ...

先回到浏览器 ... 然后打开刚才添加到集合里面的那个模型 ... 注意,这个模型里面,没有 id 属性 ..

这个属性是模型在数据库里面的 id 号 ... 因为我们在把模型保存到数据库之前,已经把模型添加到了集合里面,所以,这里就不会有 id 号。

解决的办法就是,把 create 方法的 wait 选项,设置成 true ... 等待服务端的响应 ...

然后在服务端,我们可以在把模型保存到数据库之后,返回这个模型 ... 这样,再把这个模型添加到集合里的时候,模型就拥有了 id 属性了 ...

先打开 NoteController ... 在 store 这个方法里 .. 返回保存之后的模型 ...

return $note;

保存 ... 再回到浏览器 ...

下面,再用一个 create 方法 ... 这回给它一个选项参数 ... 把 wait 选项的值,设置成 true

noteCollection.create({title: '下礼拜六是老爸生日'}, {wait: true})

打开这个返回来的模型 ...

你会看到,现在这个模型里面,就会包含这个 id 属性了 ...

把模型添加到集合里再更新到数据库 - create《 Backbone 基础 》

统计

15260
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点