@demiurg337

Как правильно использовать коллекции в Backbone?

Помогите понять Backbone.

В каких именно случаях нужно использовать нужно использовать модели, а в каких лучше использовать коллекции?

Если например с сервера нужно взять массив данных и нужно просто вывести его в виде, для этого лучше использовать коллекцию или модель?

Можете еще навести примеры когда правильно использоваь модель, а когда коллекцию.

Всех заранее благодарю за ответы.
  • Вопрос задан
  • 2442 просмотра
Решения вопроса 1
aen
@aen
Keep calm and 'use strict';
Модель и коллекция это в первую очередь абстракции над данными. Смысл этих абстракций в удобстве манипулирования данными. Вы данными манипулируете? Нет. Просто рендерите массив. Потому в данном случае можно обойтись моделью. Но если вам нужно работать с массивом не как с единичной сущностью, а как с набором сущностей, то вам нужно брать коллекцию.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
Если я правильно помню то логика примерно следующая:
Допустим у нас есть корзина которой есть заказы, у каждого заказа есть какие то свои параметры (название, цена, кол-во) это модель, а корзина это получается хранилище для нескольких моделий, т.е. коллекция(моделей) которая выполняет дейсвия с моделями. Потом мы можем например сказать коллекции сделать какие то дейсвитя с моделями

В Вашем случае скорее всего нужна просто модель.
Ответ написан
Комментировать
k12th
@k12th
console.log(`You're pulling my leg, right?`);
Коллекция -- это таблица в БД, модель -- это строчка в этой таблице.
К сожалению, реальный мир иногда сложнее, и появляются связи типа один-ко-многим, многие-ко-многим и так далее. По отношению к Backbone.js это означает, что у вас в модель вложена коллекция (или еще одна модель). Для работы с такими ситуациями есть несколько плагинов, но, пожалуй, самый мощный это Backbone-relational.js
Ответ написан
Комментировать
mlnkv
@mlnkv
JavaScript Developer
как только у вас встречается слово массив - тут же используем коллекцию
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы