我有一系列模特:
city = new M.City
App.citiesList = new C.CitiesList model: city
App.citiesList.fetch()
如何使用id=15
来访问模型?
我需要App.citiesList.find(15).name()
,,其中name()
是模型功能
当我尝试将函数find添加到集合时,它是不正确的
当我尝试迭代App.citiesList.models
时 - 我只看到一个模型或它是什么......我实际上不知道。
非常感谢!
答案 0 :(得分:3)
如果App.citiesList
是Backbone集合,那么您需要使用get
:
获取 collection.get(id)
从 id 指定的集合中获取模型。
所以这会从集合中获得你的模型:
fifteen = App.citiesList.get 15
如果你想调用一个方法:
App.citiesList.get(15).name()
你可能想要确保先从App.citiesList.get 15
取回一些东西(除非你知道它当然在那里)。由于您使用的是CoffeeScript,因此可以使用existence operator,如下所示:
name = App.citiesList.get(15)?.name()
#----------------------------^
在undefined
变量中获取15的名称或name
。
find
上的App.citiesList
方法将是Underscore的find
,并且找不到具有特定ID的对象。