无法访问模板中的模型存储

Unable to access model store in template

我的智慧就这样结束了,我知道我可能只是错过了一些非常明显的东西。试图让我的头脑与 Ember 和 Lavarel 一起工作。 Lavarel 正在正确发送数据,但我似乎无法在数据存储后访问它。我已经尝试了很多不同的方法来让它工作,但它总是显示为空白,就好像 model.car(或汽车、模型等)中没有任何内容。如果有人能指出我正确的方向,那将会很有帮助。我见过几个类似的问题,但 none 似乎解决了我的问题。

Model Data

Data Sent from Lavarel

cars.js(路线)

    import Ember from 'ember';

export default Ember.Route.extend({
    model: function() {
        return this.store.findAll('car');
    }
});

car.js(型号)

import DS from 'ember-data';

export default DS.Model.extend({
  make: DS.attr('string'),
  model: DS.attr('string')
});

cars.js(控制器)

import Ember from 'ember';

export default Ember.Controller.extend({
    session: Ember.inject.service()

});

application.js(序列化器)

import DS from 'ember-data';

export default DS.RESTSerializer.extend({
    normalizeSingleResponse(store, primaryModelClass, payload, id, requestType) {
    let typeKey = primaryModelClass.modelName;
    let ret = {};
    ret[typeKey] = payload;
    return this._normalizeResponse(store, primaryModelClass, ret, id, requestType, true);
},
normalizeArrayResponse(store, primaryModelClass, payload, id, requestType) {
    let typeKey = primaryModelClass.modelName;
    let ret = {};
    ret[typeKey] = payload;
    console.log(ret);
    return this._normalizeResponse(store, primaryModelClass, ret, id, requestType, false);
}
});

cars.hbs(模板)

{{outlet}}
<ul id="todo-list">
        {{#each model.car}}
        <li>
            <input type="checkbox" class="toggle">
            <label>{{make}}</label><button class="destroy"> delete item</button>
        </li>
    {{/each}}

</ul>

如果您将汽车模型加载到商店中,那么您对所有事情都是正确的。正如您所说,您错过了一些非常明显的事情。即,您可以使用 model 而不是 model.car 进行访问。 对于接下来的调试,我鼓励您使用像 {{log 'model' model}} 这样的日志助手,这将在控制台中打印模型对象。您可以通过 ember template development helper ember 指南

<ul id="todo-list">
        {{#each model as |car|}}
        <li>
            <input type="checkbox" class="toggle">
            <label>{{car.make}}</label><button class="destroy"> delete item</button>
        </li>
    {{/each}}
</ul>
{{outlet}}