Я пытаюсь обновить свое представление всякий раз, когда добавляю новую модель в свою коллекцию. Мой первый вопрос я автоматически добавить модель в моей коллекции, когда я сохранить эту модель, как:Collection add event listener в Backbone
PostsApp.Views.Form = Backbone.View.extend({
template: _.template($('#form-template').html()),
render: function(){
this.$el.html(this.template(this.model.toJSON()));
},
events:{
'click button' : 'save'
},
save: function(e){
console.log("is this working");
e.preventDefault();
var newname = this.$('input[name=name-input]').val();
var newadress = this.$('input[name=adress-input]').val();
this.model.save({name: newname, adress : newadress});
}
});
или мне все равно придется делать collection.add()
Кроме этого, чтобы увидеть новая модель на мой взгляд, я пытаюсь добавить «добавить» слушателя событий, как это:
PostsApp.Views.Posts = Backbone.View.extend({
initialize: function(){
this.collection.on('add', this.addOne, this);
},
render: function(){
this.collection.forEach(this.addOne, this);
},
addOne: function(post){
var postView = new PostsApp.Views.Post({model:post});
postView.render();
this.$el.append(postView.el);
}
});
Это не только не работает, но когда я добавляю метод инициализации, он просто дублирует все в моей модели, когда страница сначала загружается.
благодаря которой следует это collection.create ({модель}); быть в моем коде? –
Итак, в основном вы переходите в коллекцию к 'subView' и в методе сохранения' subView' вам нужно будет использовать его –
Я предполагаю, что в методе сохранения, поэтому, когда я создаю новый вид формы, я должен пройти в сбор вместо модели? –