无法在我的收藏中添加多个模型

时间:2013-04-26 10:22:44

标签: backbone.js

我是Backbone的新手,并尝试使用骨干制作表格数据,它有添加,编辑,删除(CRUD)。

在这个过程中我完成了添加部分,一切正常。但我无法使用创建新列表按钮添加多个人。有人帮我解决问题以及如何解决这个问题吗?

以下是摘录:

模板:

<tbody>
    <% _.each(users, function(user){ %>
        <tr>
        <td><%= user.get("firstName") %></td>
        <td><%= user.get("lastName")%></td>
        <td><%= user.get("age") %></td>
        <td><a href="#/edit/<%= user.get("id") %>" class="btn">Edit</a></td>
        </tr>
    <%})%>
</tbody>

//功能

render:function(){
var template = _.template($("#listTempalate").html(), {users:this.collection.models});
        this.$el.html(template)
},

以下是jsfiddle

提前致谢。

1 个答案:

答案 0 :(得分:2)

将数据推送到数组时,您不会添加id属性。

“已创建”数据共享相同(不存在)id,而主干集合仅允许同一模型的单个实例(基于id)。因此,只有第一个创建的模型被添加到集合中。

您在真正的Backbone应用程序中要做的是创建一个包含输入数据的新userModel和用于集合的.add(),或者只使用原始数据调用集合上的.add()。 / p>

对于您的演示,您可以在将数据推送到数组之前生成id属性。