Показать сообщение отдельно
  #4 (permalink)  
Старый 27.06.2016, 14:09
Аватар для armidoll
Кандидат Javascript-наук
Отправить личное сообщение для armidoll Посмотреть профиль Найти все сообщения от armidoll
 
Регистрация: 28.05.2015
Сообщений: 116

Сообщение от zlodiak Посмотреть сообщение
я так понял, что для того чтобы пользоваться плагином, нужно обязательно view присвоить модель таким образом:
this.model = model


потому что чуть позже в биндинге используется this:
Backbone.Validation.bind(this, {
      attributes : ['title', 'desc']
    });


правильно?
Автор плагина пишет, что модель должна быть предварительно ИНИЦИАЛИЗИРОВАНА :

The validation binding code is executed with a call to Backbone.Validation.bind(view). There are several places that it can be called from, depending on your circumstances, but it must be called after your model or collection has been initialized.

( и доступные примеры использования это также подтверждают ), т.е. в нашем случае конструктор должен создать объект и о модели мы уже говорим, не как о конструкторе (классе), а как о возвращаемом объекте (экземпляре класса)

Тогда this.model = model годится если ссылается на экземпляр, а не на конструктор

(я так понял замысел автора)

Сообщение от zlodiak Посмотреть сообщение
но в этом случае получается, чт оя неправильно спроектировал программу вообще. потому что APP.DiariesView это не APP.DiaryView и прописывать модель модель только для того чтобы заработал плагин это не правильно и является костылём...
Да является костылём в данном учебном примере. Архитектуру лучше бы поменять.
Ответить с цитированием