2013-03-01 3 views
0

У меня проблема - я создал ссылку для удаления для каждой модели &, она удалена из db ... но мне не удалось правильно настроить обратный вызов на событие delete для правильного визуального отображения.backbone.js при удалении модели из db удалить это из вида

class Notes.Views.ArticlesIndex extends Backbone.View.  
    render: -> 
    $(@el).html(@template()) 
    @collection.each(@appendEntry) 
    this 

    appendEntry: (article)-> 
    view = new Notes.Views.Article(model: article) 
    $('ul#article_list').append(view.render().el) 


class Notes.Views.Article extends Backbone.View 
    template: JST['articles/menu']  
    events: 
    'click a.delete': 'deleteEntry' 
    initialize: -> 
    # putting @model.on('destroy',@render,this) didn't help  
    deleteEntry: (event)-> 
    event.preventDefault() 
    @model.destroy() 

ОБНОВЛЕНИЕ!
как дополнение к @nEEbz ответ, добавив @model.on('destroy',@remove,this) callback также помог!

ответ

1

Попробуйте это:

deleteEntry: (event)-> 
    event.preventDefault() 
    @model.destroy() 
    @$el.remove() 
+0

Большое спасибо, это помогло мне много. Застрял в этой незначительной проблеме ... – Elmor

+0

Отредактировал мой вопрос, добавил еще один метод решения этой проблемы – Elmor

Смежные вопросы