Как обрабатываются события «изменения» в магистральных моделях?

я пытаюсь построить модель, которая динамически обновляет переменные сеанса в проекте Meteor. Я знаю, что обычный JSON не должен храниться в магистральных моделях, поэтому у меня есть специальная модель, настроенная так:

initialize : function () {
    // Log the changed properties
    this.on('change', function (model, options) {
        for ( var i in options.changes)
            this.display(i);
        Session.set('NewSpecial', model);
    });
},
//Attributes
defaults: {
    "Product" : null,
    "ShortDescription" : null,
    "Category" : "food",
    "Price" : new PriceModel,
    "Date" : new DateModel,
    "Uses" : 0,
    "Tags" : [],
    "Contributor" : null
},

С "Цена" а также "Дата" хранятся в собственных моделях:

//Price model for use within Special
var PriceModel = Backbone.Model.extend({
    defaults : {
        "Regular" : null,
        "Special" : null,
        "PercentOff" : null
    }
});

//Date model for use within Special
var DateModel = Backbone.Model.extend({
    defaults : {
        "StartTime" : null,
        "EndTime" : null,
        "HumanTimeRange" : null
    }
});

Как показано, когда атрибуты специальной модели изменяются, она должна вызвать display для атрибута, который изменился, а затем установить Session var в модель. Однако если мои DateModel или PriceModel изменятся, это неПоявляется, чтобы вызвать событие изменения в Специальной модели. Должен каждыйDateModel» а также "PriceModel» есть своиthis.on('change', ...) методы, которые вызываютSpecial.set(attribute, thisModel) методы? Или есть другой способ пойти по этому поводу?

Ответы на вопрос(1)

Ваш ответ на вопрос