Ember-cli夹具装载 [英] Ember-cli Fixture loading

查看:115
本文介绍了Ember-cli夹具装载的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我确定它的东西很小,愚蠢的我失踪了,但似乎不能让我的装置加载。这是我有...



app / models / todos.js

 从ember-data导入DS; 

var Todo = DS.Model.extend({
title:DS.attr('string'),
isCompleted:DS.attr('boolean')
});

Todo.reopenClass({
FIXTURES:[
{
id:1,
title:'install ember-cli',
isCompleted:true
},{
id:2,
title:'install additional dependencies',
isCompleted:true
},{
id:3,
title:'develop amazing things',
isCompleted:false
}
]});

导出默认Todo;

app / adapters / application.js

 从ember-data导入DS; 

导出默认DS.FixtureAdpater.extend();

app / routes / todos.js

 从ember导入Ember; 

导出默认值Ember.Route.extend({
model:function(){
return this.store.all('todo');
}
});

app / router.js

 从ember导入Ember; 

var Router = Ember.Router.extend({
location:TodosENV.locationType
});

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

导出默认路由器;

Brocfile.js

  var EmberApp = require('ember-cli / lib / broccoli / ember-app'); 

var app = new EmberApp();

app.import({
development:'vendor / ember-data / ember-data.js',
production:'vendor / ember-data / ember-data。 prod.js'
},{
'ember-data':[
'default'
]
});

module.exports = app.toTree();

我已经能够通过路线将夹具数据推送到视图中,

  this.store.push(todo:{some junk}); 

但无法弄清我在模型文件中的错误。



任何帮助将不胜感激,谢谢。

解决方案

这只是一个猜测,但是我想知道你是否需要将 this.store.all('todo'); 更改为 this.store.find('todo') ; 。我确定 all()只会返回从商店已经加载的记录。


I'm certain its something small and stupid I'm missing but can't seem to get my fixtures to load. Here is I've got...

app/models/todos.js

import DS from 'ember-data';

var Todo = DS.Model.extend({
  title: DS.attr('string'),
  isCompleted: DS.attr('boolean')
});

Todo.reopenClass({
  FIXTURES: [
    {
      id: "1",
      title: 'install ember-cli',
      isCompleted: true
   }, {
     id: "2",
     title: 'install additional dependencies',
     isCompleted: true
    }, {
      id: "3",
      title: 'develop amazing things',
      isCompleted: false
  }
]});

export default Todo;

app/adapters/application.js

import DS from 'ember-data';

export default DS.FixtureAdpater.extend();

app/routes/todos.js

import Ember from 'ember';

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

app/router.js

import Ember from 'ember';

var Router = Ember.Router.extend({
  location: TodosENV.locationType
});

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

export default Router;

Brocfile.js

var EmberApp = require('ember-cli/lib/broccoli/ember-app');

var app = new EmberApp();

app.import({
  development: 'vendor/ember-data/ember-data.js',
  production:  'vendor/ember-data/ember-data.prod.js'
}, {
  'ember-data': [
    'default'
  ]
});

module.exports = app.toTree();

I've been able to push fixture data into the views via the routes with,

this.store.push(todo: {some junk});    

but can't figure out what I'm doing wrong in model files.

Any help would be greatly appreciated, Thanks.

解决方案

This just a guess, but I'm wondering if you need to change this.store.all('todo'); to this.store.find('todo');. I'm pretty sure all() will only return records that are already loaded from the store.

这篇关于Ember-cli夹具装载的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆