我试图让单个模型加载到我的ObjectController中,并且我很难让它显示在我的模板中。我的其他途径使用ArrayController所以当我在模板我我只是做了以下遍历每个对象:使用Ember CLI中的模板使用ObjectController从模型中获取数据
{{#each item in model}}
..
{{item.firstName}}
..
{{/each}}
但我无法弄清楚如何做到这一点如果没有多单项目在模型中。看看下面的链接:Ember.js Docs on ObjectController它应该是非常容易,但我的似乎并没有正常工作。以下是我正在使用的残缺代码。任何帮助表示赞赏。谢谢!
应用程序/ router.js:
import Ember from 'ember';
import config from './config/environment';
var Router = Ember.Router.extend({
});
Router.map(function() {
this.route('login', {path: '/'}, function(){
this.resource('login');
});
this.route('items', {path: '/items'}, function(){
this.resource('items');
});
this.route('item-details', {path: '/item/:item_id'}, function(){
this.resource('item-details');
});
});
export default Router;
应用程序/路由/项目-details.js:
import Ember from 'ember';
export default Ember.Route.extend({
model: function(params){
return this.store.find('item-details');
}
});
应用/型号/项目-details.js:
import DS from 'ember-data';
var ItemDetails = DS.Model.extend({
itemNumber: DS.attr('string')
});
ItemDetails.reopenClass({
FIXTURES: [
{id: 1, itemNumber: '0000001'}
]
});
export default ItemDetails;
app/controllers/item-details.js:
import Ember from 'ember';
export default Ember.ObjectController.extend({
});
应用/模板/项目 - details.hbs:
Item Number: {{itemNumber}}<br/>
{{model}}<br/>
{{model.itemNumber}}<br/>
{{model.data.itemNumber}}<br/>
{{content.itemNumber}}<br/>
{{model.content.0.itemNumber}}<br/>
模板的显示值当我运行上面的是:
Item Number:
<DS.RecordArray:ember377>
<three blanks>
0000001
我也验证了DS不会获得创建。我可以在Ember调试器中查看它。