0

嗨,我正在从服务器上的特定模式中搜索,并且我正在返回一个模型列表。

 {"0":{"id":"20","name":"The White Tiger ","author":"Arvind Adiga","status":"Read"},
  "1":{"id":"23","name":"Tiger and the Apes","author":"Benny Rice", "status":"Read"} }

我最初试图通过

       var books = new Books()   //Books() is a collection name. 
       books.fetch({data: {name:'tiger'}});  

但得到未定义的错误。

所以我试图获得一系列模型。

   var books = new Book() //Book is a model name
    books.fetch({data: {name:'tiger'}});   

如上所述,我得到了一系列模型。

如何在下划线模板中呈现模型数组?这真的是一个非常糟糕的做法吗?

4

1 回答 1

0

您的收集响应不正确,这就是 Backbone 无法正确解析它的原因。

如果您正在fetch收集一个集合,则它们应该采用以下格式:

[ { .. }, { .. }, { .. } ... ] 对象数组

如果您正在fetch学习模型,那么他们应该:

{ .. } 单对象哈希

因此,如果您修复了响应,那么它将自动加载到集合中,即

[ 
   {"id":"20","name":"The White Tiger ","author":"Arvind Adiga","status":"Read"},
   {"id":"23","name":"Tiger and the Apes","author":"Benny Rice", "status":"Read"} 
]
于 2013-04-01T11:11:47.823 回答