【发布时间】:2017-02-23 18:01:18
【问题描述】:
这已经被问过几次了,但这些例子并没有太大帮助。
我想将“帖子”发布到我的服务器,所以我有一个“帖子”模型,然后是一个“单一”模型。 “帖子”模型代表所有帖子,然后我的“单个”模型代表每个帖子需要什么......我是 Ember.js 的新手,真的可以在这里/方向使用。
所以当我提交表单(用于创建新帖子)时:
// When the form is submitted, post it!
actions: {
// createNew begin
createNew() {
var title = this.controller.get('title');
var content = this.controller.get('content');
const data = {
"posts": [
{
"title": title,
"content": content
}
]
};
return this.store.createRecord('posts', data).save().
then(function(post) {
console.log(post);
}, function(error) {
console.log(error);
});
} // end of createNew
}
“帖子”模型:
import DS from 'ember-data';
export default DS.Model.extend({
posts: DS.hasMany('single'),
});
“单一”模型: 从“ember-data”导入 DS;
export default DS.Model.extend({
title: DS.attr('string'),
content: DS.attr('string'),
});
然后我的序列化器将两者挂钩...
import DS from 'ember-data';
export default DS.RESTSerializer.extend(DS.EmbeddedRecordsMixin, {
attrs: {
posts: { embedded: 'always' }
}
});
目前,这是输出的错误:
“断言失败:hasMany 关系的所有元素都必须是 DS.Model 的实例,您传递了 [[object Object]]”
简而言之:我需要创建可以表示以下 JSON 结构的数据模型:
{
"posts": [
{ "title": "Title", "content": "Content" }
]
}
谢谢!
【问题讨论】:
标签: javascript ember.js ember-data