【问题标题】:Ember Fixtures data not loadingEmber Fixtures 数据未加载
【发布时间】:2015-01-14 16:44:01
【问题描述】:

我一直在尝试让 Ember 夹具数据在我正在开发的基于 ember-rails gem 的测试应用程序上运行。当我使用 Chrome Ember 检查器工具时,数据模型似乎正在加载,但它没有加载实际数据。

我有以下设置。

路由器.js

App.Router.map(function() {
  this.resource('projects'), { path: '/' };
});

store.js

App.ApplicationAdapter = DS.FixtureAdapter

models/project.js

App.Project = DS.Model.extend({
  name: DS.attr('string')
});

App.Project.FIXTURES = [
  { id: 1, 
    name: 'Test data 1'
  },
  { id: 2,
    name: 'Test data 2'
  }
];

routes/projectsRou​​te.js

App.ProjectRoute = Ember.Route.extend({
  model: function() {
    return this.store.find('project');                                            
  }
});

正如我提到的,这是使用 ember-rails gem 构建在 rails 之上的。

任何帮助将不胜感激:)

【问题讨论】:

    标签: javascript ruby-on-rails ember.js


    【解决方案1】:

    看起来您必须重新打开模型,而不是添加 FIXTURES 作为键:

    App.Project.reopenClass({
      FIXTURES: [
        { id: 1, 
          name: 'Test data 1'
        },
        { id: 2,
          name: 'Test data 2'
        }
      ]
    });
    

    http://emberjs.com/guides/models/the-fixture-adapter/

    【讨论】:

    • 感谢您的回复。不幸的是,当我改用reopenClass 时,我似乎完全失去了chrome ember 检查器的模型......
    • 看起来商店也期望这样:return this.store.find('project', 1);
    • 恐怕还是不高兴:(。Ember Chrome 检查器在数据选项卡中显示 project(0)。再次感谢您的帮助,任何其他想法都会很棒!
    • 我认为只设置一个 Rails API 会更容易。对于任何想要做同样事情的人,我推荐这个很棒的教程 - ember.vicramon.com/creating-the-rails-api
    猜你喜欢
    • 1970-01-01
    • 2014-10-12
    • 2010-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多