Javascript-форум (https://javascript.ru/forum/)
-   Backbone.js (https://javascript.ru/forum/backbone/)
-   -   форма загрузки файлов (https://javascript.ru/forum/backbone/63422-forma-zagruzki-fajjlov.html)

zlodiak 06.06.2016 22:20

форма загрузки файлов
 
вот набросал форму для загрузки различного количества файлов.
http://fh79272k.bget.ru/files/works/shipping_form/2/
https://github.com/zlodiak/shipping_form_2

я здесь вынес в модель вот такую проверку:
getValidCondition: function() { 
    var invalid =   !this.isValid('name') || 
                    !this.isValid('type') || 
                    !this.isValid('sizeBytes');

    return invalid ? false : true;
  }

shipping_form_2/js/project/models/models.js
строка 28

скажите, это хорошо и правильно или таким функциям место не в модели, а в view? а в модели нужно хранить только данные, без всякой логики?

проблема в том, что если бы я не вынес в модель эту функцию, то мне пришлось бы создавать новую глобальную переменную, которая содержала бы список view. она мне понадобилась бы в:
shipping_form_2/js/project/views/formViews.js
строке 42
чтобы получить из каждого view информацию о валидности

armidoll 16.06.2016 11:47

ИМХО, модель должна быть в состоянии работать независимо со своими данными ( через свой API ) без участия представления и содержать всё необходимую логику для манипуляций над собой ( управление своим состоянием, данными и т.п. )


Часовой пояс GMT +3, время: 01:56.