Ey伙计们,
我的一个模特有一个奇怪的问题: 以下代码负责获取页面模型和所有新项目。
Bouwbedrijf.ProjectsOldRoute = Ember.Route.extend({
model: function() {
return App.Page.find(3);
},
setupController: function(controller, model)
{
controller.set('content', model);
controller.set('projecten', App.OldProjects.find());
},
renderTemplate: function (){
this.render();
this.render('pagetitle', {into: 'projects', outlet: 'page-title'});
this.render('oldprojectshowcase', {
into: 'projects/old',
outlet: 'projecten'
});
}
});
但是,如果我遍历模板中的controller.projecten,则没有合适的输出。我确实看到3个li元素被渲染,但我似乎无法显示项目的名称......
这是模板代码
<script type="text/x-handlebars" data-template-name="oldprojectshowcase">
<h3>Projects showcase</h3>
<ul>
{{#each project in projecten}}
<li>{{project.name}}</li>
{{/each}}
</ul>
</script>
为了让你们更清楚,我准备了一个jsbin - &gt; http://jsbin.com/Uqop/2/ 在这个例子中有一个页面Old projects,它显示在一个展示柜中(排序;))
答案 0 :(得分:0)
问题与setupController之间没有关系。
问题是您正在尝试访问尚未在模型中定义的属性
name
模型中未定义属性App.OldProjects
定义它就可以了。
App.OldProjects = DS.Model.extend({
title: DS.attr('string'),
project: DS.attr('string'),
name: DS.attr('string'),
img: DS.attr('string')
});
对JSBin的更正。