Backbone.js 通过模型&xB4;将数组添加到下划线视图

Backbone.js 通过模型&xB4;将数组添加到下划线视图,backbone.js,Backbone.js,我正试图将一些模型的姿态传递给我的下划线视图,然而,由于某些原因,我无法找到正确的方法使其工作,如果有人能指出正确的方向,我将不胜感激 App.appModel = new App.Models.AppModel({ "user" : data.user, "acls" : data.acls //acls is an array, which I need to pass to the view }); App.appLogged = new App.Views.App(

我正试图将一些模型的姿态传递给我的下划线视图,然而,由于某些原因,我无法找到正确的方法使其工作,如果有人能指出正确的方向,我将不胜感激

 App.appModel = new App.Models.AppModel({
    "user" : data.user,
    "acls" : data.acls //acls is an array, which I need to pass to the view
 });
 App.appLogged = new App.Views.App({
    model : App.appModel
 });


 //My view
 App.Views.App = Backbone.View.extend({
     render : function() {
       template = _.template( $('#Home').html(), {acls : this.model.toJSON }) ;
       this.$el.html(template);
     }
 });


//so In my view... I need a li with each acl
<script type="text/template" id="Home">
      <% _.each(acls, function(acl) { %>
        <li><%= acl.get(0)  %></li>
    <% }); %> 
</script>
App.appModel=新建App.Models.appModel({
“用户”:data.user,
“acls”:data.acls//acls是一个数组,我需要将其传递给视图
});
App.apploged=新建App.Views.App({
型号:App.appModel
});
//我的看法
App.Views.App=Backbone.View.extend({
render:function(){
template=35;.template($('#Home').html(),{acls:this.model.toJSON});
这个.$el.html(模板);
}
});
//所以在我看来。。。我需要每个acl都有一个li
  • 它不会抛出任何错误。。。它只是不呈现它


    提前谢谢

    调用
    toJSON()
    中似乎缺少paren


    更改模板编译行:

    //My view
     App.Views.App = Backbone.View.extend({
         render : function() {
           template = _.template( $('#Home').html(), this.model.toJSON()) ;
           this.$el.html(template);
         }
     });
    
    model.toJSON
    将生成一个具有与模型属性对应的键的对象。在这种情况下,它已经包含键
    acl
    。你制作的是

    { ACL:{ ACL:[], ... } }

    您的模板需要的是:

    { ACL:[xxxx] }


    通常,在渲染时调用
    console.log(this.model.toJSON())
    来查看模板中的内容是很有用的。

    pro提示:添加
    来下划线模板,在模板中设置断点,并查看需要注意的是这种形式的
    .\template
    ,您现在需要在单独的步骤中编译和填充模板。不,它不起作用,我认为这是因为我正在传递一个带有几个属性的模型,而不是仅传递ACL。但如果我制作类似ACL:this.model.permisos.toJSON()的东西,它会抛出未定义的。@andresijares25:this.model
    在您的视图中是模型还是集合?为什么模型会有
    permisos
    属性?这不是一个属性吗(例如,
    this.model.get('permisos')
    )?
    //My view
     App.Views.App = Backbone.View.extend({
         render : function() {
           template = _.template( $('#Home').html(), this.model.toJSON()) ;
           this.$el.html(template);
         }
     });