我正在尝试在使用 cli 生成的 ember 应用程序中使用固定装置数据。我找不到我的数据。检查员显示我有一个名为 post 的模型,但其中没有任何内容。我不确定为什么它不起作用,所以发布我认为相关的文件......
模型/post.js
var Post = DS.Model.extend({
title: DS.attr('string'),
content: DS.attr('string'),
publishDate: DS.attr('date')
});
Post.reopenClass({
FIXTURES: [
{
id: 1,
title: "Writing a blog in Ember",
content: "I am writting a blog",
publishDate: "05/22/2104"
},
{
id: 2,
title: "Writing a blog in Ember",
content: "I am writting a blog",
publishDate: "05/22/2104"
}
]
});
export default Post;
路由器.js
var Router = Ember.Router.extend({
location: ENV.locationType
});
Router.map(function() {
this.resource('posts', { path: '/' });
});
export default Router;
路线/index.js
export default Ember.Route.extend({
model: function() {
return this.store.find('post');
}
});
控制器/posts.js
var PostsController = Ember.ArrayController.extend({
});
export default PostsController;
模板/posts.hbs
<p>Test</p>
<ul>
{{#each}}
<li>
{{title}}
</li>
{{/each}}
</ul>
我认为这个问题是 ember-cli 特定的。我之前有过使用 Ember App Kit 的固定装置,但想使用 ember-cli。我添加了适配器并尝试更改声明装置的方式:
适配器/post.js
var PostAdapter = DS.FixtureAdapter.extend({});
export default PostAdapter;
Changed模型/post.js
var Post = DS.Model.extend({
title: DS.attr('string'),
content: DS.attr('string'),
publishDate: DS.attr('date')
});
Post.FIXTURES = [
{
id: 1,
title: "Writing a blog in Ember",
content: "I am writting a blog",
publishDate: "05/22/2104"
},
{
id: 2,
title: "Writing a blog in Ember",
content: "I am writting a blog",
publishDate: "05/22/2104"
}
];
export default Post;
这还是不行。 Ember 检查器显示具有正确字段(id、标题、内容发布日期)的帖子,但没有实际数据。