Ember-cli处理路径时出错:category.index

时间:2014-12-10 10:22:18

标签: ember.js ember-cli

这是我与EmberJS和Ember-CLI的第一个项目。 我运行以下命令:

ember new site  //version: 0.1.2
ember generate resource categories   

我得到以下答案和测试:

  create app/models/category.js
  create app/routes/categories.js
  create app/templates/categories.hbs

ember generate resource category

我得到以下答案和测试:

  create app/routes/category.js
  create app/templates/category.hbs
  identical app/models/category.js

router.js文件有:

Router.map(function() {
  this.resource('categories', function() { });
  this.resource('category', { path: 'categories/:category_id' }, function() { });
});

当我访问dev:4200/categories/1时,我收到以下错误:

 GET http://dev:4200/categories/1 404 (Not Found)
 Error while processing route: category.index

谁能告诉我我缺少什么? 所有文件都是由ember-cli生成的默认状态。

编辑:我有models/category.js

export default DS.Model.extend({
  name: DS.attr()
});

routes/category.js

export default Ember.Route.extend({
  model: function(params){
    console.log({category_id: params.category_id});
//    return this.store.find('category', params.category_id);
  }
});

路由dev:4200/categories/1有效,console.log显示值Object {category_id: "1"},但return this.store我收到错误。

1 个答案:

答案 0 :(得分:3)

我通过创建一个FixtureAdapter并在模型中添加一些灯具来解决它。

ember generate adapter application

export default DS.FixtureAdapter.extend({    
});

models/category.js

var Category = DS.Model.extend({
  name: DS.attr('string'),
  img: DS.attr('string'),
  cnt: DS.attr('number')
});

Category.reopenClass({
    FIXTURES: [
        {
            id: 1,
            name: "Writing a blog in Ember",
            cnt: 8,
        },
        {
            id: 2,
            name: "Writing a blog",
            cnt: 5
        }
    ]
});

export default Category;

该错误具有误导性。现在它工作得很好。感谢。