расслоения плотной приложение/модель/card.jshasMany объединения в Ember
export default Model.extend({
title: attr('string'),
description: attr('string'),
users: hasMany('user')
});
приложения/модель/user.js
export default Model.extend({
email: attr('string'),
name: attr('string')
});
приложения/маршруты/карта/new.js
actions: {
save(title, description) {
const newCard = this.get('store').createRecord('card', {
title,
description
});
this.get('store').findRecord('user', 1).then(function(user) {
newCard.set('users', user);
console.log(newCard);
});
newCard.save().then((card) => {
// go to the new item's route after creating it.
this.transitionTo('card.card', card);
});
}
}
Таким образом, когда я сохраняю card
, он бросает мне эту ошибку:
Assertion Failed: You must pass an array of records to set a hasMany relationship
.
Я хочу создать связь между созданным card
и user
.
Дополнительная информация:
Repo ссылка: https://github.com/ghoshnirmalya/hub-client
Ember: 2.6.1
Ember данных: 2.6.1
Это просто отправьте этот ответ '{" data ": {" attributes ": {" title ":" sad "," description ":" asdasd "}," relationship ": {" users ": {"data": []}}, "type": "cards"}} 'где' users.data' - пустой массив. Мои бэкэнд ожидает, что 'users.data' будет чем-то вроде' [1, 2, 3] 'или даже' [1] '. –
Как 'findRecord()' async ваш 'newCard.save()' может срабатывать, прежде чем устанавливать связь. Попробуйте переместить сохранение в обещание. – donleche