2013-07-02 3 views
0

Каждый раз, когда я делаю «выборку» моей коллекции, позвоночник создает новые модели для каждого элемента. Старые модели падают в памяти, вызывая большую утечку памяти.Магистраль продолжает создавать новые модели

Нет данных об изменениях между вызовами «извлечения», если магистраль не признает, что изменений нет и продолжают?

+1

Пожалуйста, добавьте пример кода на свой вопрос. –

ответ

2

Магистральная коллекция будет использовать метод «set» для обновления данных модели в коллекции. Set умный метод, и он будет выполнять эти проверки, когда сбор выборки данных с сервера:

  1. Добавить: Если модель в списке еще нет в коллекции будет добавлен.
  2. слияния: если модель уже в коллекции его атрибуты будут объединены
  3. удалить: если коллекция содержит все модели, которые не присутствуют в списке, то они будут удалены

Ваш проблема заключается в том, что коллекция будет постоянно добавлять новую модель при получении данных с сервера, даже если вы просто пытаетесь обновить данные, которые обновляются. Я думаю, что ваши данные не имеют уникального атрибута «id». Таким образом, коллекция не может выполнять «интеллектуальное обновление» при извлечении данных с сервера.

{id:"1234",name:"blabla","tel:0600000000"} 

Я надеюсь, что это будет полезно для вас.

0

Проблема другая, чем я думал.

Я сохраняю список подзадач в моем представлении, чтобы я мог их удалить. Однако, похоже, есть два разных свойства с тем же именем. Один придерживается взглядов. enter image description here