Jquery Draggable и Backbone.js получают ссылку на модель позвоночника изнутри droppable success callback

У меня тут есть модель с видом на позвоночник, которую я рендерирую и делаю ее перетаскиваемой с помощью Джекри Уи.

render: ->
$(this.el).attr('class', 'item').html(this.template(this.options.model.toJSON() ))
viewmodel = this
$(this.el).draggable
    revert: true
    drag: () ->
        console.log(viewmodel)

Выше у меня есть видовая модель, я могу удалить ее из домена, вызвать методы на ее модели и т.п. Но я хочу перетащить эту модель представления в перетаскиваемый контейнер - например, в мусорную корзину - а затем вызвать несколько методов модели представления и удалить ее из DOM.

Однако я вижу метод обратного вызова, когда элемент бросается в контейнер:

$(function() {
    $("#trash").droppable({
        drop: function(event, ui) {
          console.log(ui.draggable);
        }
    });
});

Итак, я могу увидеть ui.draggable и удалить его из DOM, но у меня нет никакой ссылки на его модель представления. Я делаю что-то не так? Есть какой-нибудь способ обойти это?

27
задан jdkealy 7 September 2011 в 02:25
поделиться