我已经研究Backbone.js数周了,使用带有模型,路由器和集合的 View 感到很舒服。
我仍然有一些差距:
id
,cid
和idAttribute
之间有什么联系?它们如何相互影响? defaults
中(也许作为函数)?也许addNewModel
函数应该这样做? 最佳答案
cid和id都应该是模型的唯一ID,并且可以用于retrieve模型from集合。
两者之间的区别在于cid
是由bone.js客户端分配的,如果您没有实际的ID,则很有用,因为该模型尚未保存到服务器,或者您甚至没有将其保存到服务器。将其保存到数据库(也许您正在使用localStorage)。 id
属性应该是来自服务器的模型的ID(即该ID在您的数据库中)。 idAttribute
告诉 Backbone 服务器应使用哪个“字段”来更新id
属性,默认情况下此属性设置为“id”,但正如documentation中所说,如果服务器使用其他内容,则可以将其设置为(给定的示例将其设置为“_id”。
当保存到server时,它们应该获得新的ID,除非您需要对该过程进行更多控制,否则您无需手动进行设置(基于idattribute
)。