我正在试图找出我的路线停止工作的原因。我最近升级到Ember JS RC 3(来自RC2),经过更改日志后,我无法弄清楚为什么我的路线停止工作。也许我在尝试修复它时改变了一些东西;我不知道。但这就是我所拥有的。
这是我的路线。
App.Router.map(function() {
this.route("site", { path: "/" });
this.route("about");
this.resource('posts', { path: '/posts' }, function() {
this.route('new');
this.route('show', { path: '/:post_id' });
this.route('edit', { path: '/:post_id/edit'})
});
this.route("map");
});
这是我的路线处理程序......
App.PostsIndexRoute = Em.Route.extend({
model: function(){
return App.Post.find();
},
setupController: function(controller, model){
controller.set('content', model);
}
});
这是我的模特
App.Post = DS.Model.extend({
body: DS.attr('string'),
headline: DS.attr('string'),
creator: DS.attr('string'),
created: DS.attr('date')
});
这是通过网络提取的JSON(我看到它即将到来,只是没有被渲染 - 视图根本没有呈现)
[
{
"creatorID": "512808071f7152f9b6000001",
"creator": "Aaron",
"headline": "second entry",
"body": "this is my second entry. ",
"updated": "2013-03-04T20:10:14.566Z",
"created": "2013-03-04T20:10:14.566Z",
"id": "5134ffa6095e930000000001"
},
{
"body": "this is my first entry. ",
"created": "2013-02-28T22:39:32.001Z",
"creator": "Aaron",
"creatorID": "512808071f7152f9b6000001",
"headline": "first entry",
"updated": "2013-03-01T18:13:35.934Z",
"id": "512fdca479d3420000000001"
}
]
可能还要注意我在这里看不到任何JS错误,因为我正在访问localhost / posts
感谢您的帮助!
编辑:这是我用来渲染条目的模板(基于玉的)。
div {{content}}
{{#each post in content}}
div(class="post limit-width")
h3(class="headline") {{#linkTo 'posts.show' post}} {{ post.headline }} {{/linkTo}}
p {{{post.body}}}
h6
em Posted by {{post.creator}} on {{post.created}}
{{/each}}
请注意,{{content}}标记用于确定是否存在对象;有,但它的长度似乎是零。这让我觉得没有条目通过Ember Data加载,但我无法弄清楚原因。