开发者

how to see list of models in backbone.js

Here is my content.js in which i am using backbone.js for rendering contents.

 // Our basic **Content** model has `content`, `order`, and `done` attributes.
var Content = Backbone.Model.extend({
  // If you don't provide a Content, one will be provided for you.
  EMPTY: "empty Content...",
  // Ensure that each Content created has `content`.
  initialize: function() {

  }
});
var ContentCollection = Backbone.Collection.extend({  
  model : Content
});     
// Create our global collection of **Todos**.
window.Contents = new ContentCollection;
// The DOM element for a Content item...
var ContentView = Backbone.View.extend({
  //... is a list tag.
  tagName:  "li",
  events: {
    "click .content":          "open"
  },
  // a one-to-one correspondence between a **Content** and a **ContentView** in this
  // app, we set a direct reference on the model for convenience.
  initialize: function() {
    _.bindAll(this, 'render', 'close');
    this.model.bind('change', this.render);
    this.model.view = this;
  },
  // Re-render the contents of the Content item.
  render: function() {
    $(this.el).html(this.template(this.model.toJSON()));
    return this;
  }

});

Here is how i am making the list of content and rendering them.

 for(var i=0; i<data.length; i++) {
      var content = new Content(data[i]);
      var templ=_.template($('#tmpl_content').html());

      var view = new ContentView({model: content});
      view.template=templ;
      $("#content").append(view.render().el);
 }

my question is how can i get the contetnt model listing . as i have created the collection

 var ContentCollection = Backbone.Collection.extend({  
      model : Content
    });     
    // Create our global collection of **Todos**.
    window.Contents = new ContentCollection;

So when i do watch Contents it sho开发者_开发技巧ws length 0 and models [] .

how contetnt will get added in the collection . or how to see list of model in backbone.js


You need to Collection.add(models) before it will contain anything.


You also could specify a URL (which should return a JSON array of models) on your collection and then do window.Contents.fetch(). Backbone will auto-populate the model (Content) specified in your collection and automatically add them to your collection.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜