【发布时间】:2016-01-26 00:19:04
【问题描述】:
我的 ember 应用程序中有一个多态记录类型。 Posts 有一个称为响应的多态关联,它可以是几种响应。
// post.js
import DS from 'ember-data';
export default DS.Model.extend({
...
responses: DS.hasMany('response', { polymorphic: true })
});
响应模型是所有其他类型的基础。
// response.js
import DS from 'ember-data';
export default DS.Model.extend({
post: DS.belongsTo('post'),
message: DS.attr('string')
});
例如,评论继承自响应。
// comment.js
import Response from '../models/response';
export default Response.extend();
这非常适合使用 ember-data 加载模型。它正确连接到 Rails 服务器上的/responses 以获取所有类型的响应。
但是,当我尝试使用 record.destroyRecord() 删除记录时,它会将删除发送到服务器上的 /comments,而不是 /responses。因为这是一条多态记录,所以服务器上没有comments 路由。
ember-data 的其他部分是否可以指示记录删除应该是多态的?
【问题讨论】:
标签: ember.js polymorphism ember-data