Имея странные проблемы с сохранением hasMany отношений от первичной модели, ищет совет:EmberJS: Сохранение связанных отношения hasMany на модели уголька-данные создают дубликат только на дополнительных дисплеях
Мои настройки: Ember : 1.11.0-beta.1+canary.48e11592 Ember Data : 1.0.0-beta.14.1 EmberFire : 1.3.2 jQuery : 1.11.2
Отношения (псевдо): customer hasMany widgets widget belongsTo customer
addRelatedWidget: function() {
var data = this.get('addWidget');
var model = this.get('model');
var widget = this.store.createRecord('widget', {
name: data.name.trim(),
_time: new Date().getTime(),
customer: model,
});
widget.save().then(function(widget){
model.save();
});
this.set('addWidget', {
name: ''
});
}
Симптомы: Когда я добавить виджет с точки зрения клиента и сохраняются й e save, как и выше, браузер Chrome, который я добавляю правильно, показывает один экземпляр недавно сохраненного виджета. Данные в FireBase корректно показывают новый виджет, и он присоединяется к клиенту, как и ожидалось. Но, если у меня есть другие окна браузера, открытые - не имеет значения, если это еще один хром, окно инкогнито или сафари - я получаю две версии виджета, отображаемые в списке связанных виджетов.
Если я использую панель инструментов разработчика Ember в Chrome для отладки, я вижу два экземпляра одного объекта - тот же идентификатор, та же модель Эмбер:
<[email protected]:widget::ember1553:-JggK7ByZqaNhrJ4PJyq>
<[email protected]:widget::ember1553:-JggK7ByZqaNhrJ4PJyq>
И смотреть на сериализованными моделей DS.model .tab вкладки в панели инструментов Ember:
Ember Inspector ($E): Object {_time: 1422377911584, customer: "12", name: "Adding", id: "-JggK7ByZqaNhrJ4PJyq"}
Ember Inspector ($E): Object {_time: 1422377911584, customer: "12", name: "Adding", id: "-JggK7ByZqaNhrJ4PJyq"}
Они представляются двумя точными копиями точно такой же экземпляр модели.
Так что я не смог отладить это. Поскольку данные, хранящиеся в firebase и рабочем браузере, не отображаются хорошо, я задаюсь вопросом, является ли это новым шаблоном для моделирования HTMLBars в версии 1.9 ... возможно, это неверно обрабатывает события emberfire?
Я сомневаюсь, что это emberfire, так как я полагаю, что невозможно было иметь два экземпляра связанной модели в одном массиве из-за того, что связанные данные модели в firebase хранятся в -primary-key: true ...
Может ли кто-нибудь вести меня с того, где начать отлаживать это?
Благодаря
Прямо сейчас EmberFire поддерживает Ember 1.9.1 и Ember Data beta.12 (вы можете увидеть последние версии EmberFire здесь: https://github.com/firebase/emberfire#downloading-emberfire). Не могли бы вы попробовать с этими версиями и посмотреть, есть ли у вас такая же проблема? Я предполагаю, что это будет исправлено с помощью ED beta.15. – Sara
Да, вы правы, Сара, которая обратилась к нему, это проблема с версией. Благодарю. Однако все еще не уверен, что его emberfire/compatibilities или новые HTMLBars, поскольку я должен отключить HTMLBars, чтобы работать с 1.9.1 ... OT: Я знаю, что вы упомянули раньше, что ваша команда работала над обновлением адаптера emberfire для поддержки последних версии и включить некоторые из новых методов запроса - есть ли у вас ETA по этому поводу? Было бы неплохо воспользоваться ими и HTMLBars, совместимыми с 1.10+ и канарейкой. –
Один из вас должен опубликовать правильный ответ, чтобы мы могли это разрешить. Мне больно, что мой OCD имеет неотвеченные вопросы Firebase:) – Kato