保存 belongsTo 关系失败
Saving a belongsTo relationship fails
我在保存新记录时遇到问题,因为 belongsTo 关系没有分配给新创建的记录(承诺一些承诺)。
无论如何,我的后端是 rails,这些是所需的参数:
Parameters: {"photo"=>{"title"=>"Hello word", "image"=>"someimage.jpg", "user_id"=>nil}}
如您所见,user_id 为零,即使我的会话成功 returns 已登录用户 ID
我正在使用 ActiveModelAdapter。
Ember 控制器
let photo = this.store.createRecord('photo', {
title: this.get("newModel.title"),
image: this.get("newModel.image")
});
this.get('store').findRecord('user', this.get('session.data.authenticated.userId')).then(function(user){
photo.set('user', user);
});
photo.save();
这失败了,因为通过阅读 ember 文档,您无法将承诺分配为关系 (?!?!?)。 ember 端没有返回任何错误,但是用户的 belongs_to 关系看起来像这样
user <DS.PromiseObject:ember891>
我似乎还注意到 Ember 不断添加 user_id 参数,尽管没有值
请注意,没有 user_id 我无法保存记录,因为后端存在验证,这不是删除这些记录的解决方案。
有什么解决办法吗?
试试这个,
this.get('store').findRecord('user', this.get('session.data.authenticated.userId'),{ reload: true }).then(function(user) {
photo.set('user', user);
photo.save();
});
我在保存新记录时遇到问题,因为 belongsTo 关系没有分配给新创建的记录(承诺一些承诺)。
无论如何,我的后端是 rails,这些是所需的参数:
Parameters: {"photo"=>{"title"=>"Hello word", "image"=>"someimage.jpg", "user_id"=>nil}}
如您所见,user_id 为零,即使我的会话成功 returns 已登录用户 ID
我正在使用 ActiveModelAdapter。
Ember 控制器
let photo = this.store.createRecord('photo', {
title: this.get("newModel.title"),
image: this.get("newModel.image")
});
this.get('store').findRecord('user', this.get('session.data.authenticated.userId')).then(function(user){
photo.set('user', user);
});
photo.save();
这失败了,因为通过阅读 ember 文档,您无法将承诺分配为关系 (?!?!?)。 ember 端没有返回任何错误,但是用户的 belongs_to 关系看起来像这样
user <DS.PromiseObject:ember891>
我似乎还注意到 Ember 不断添加 user_id 参数,尽管没有值
请注意,没有 user_id 我无法保存记录,因为后端存在验证,这不是删除这些记录的解决方案。
有什么解决办法吗?
试试这个,
this.get('store').findRecord('user', this.get('session.data.authenticated.userId'),{ reload: true }).then(function(user) {
photo.set('user', user);
photo.save();
});