Emberjs-运行带有灯具的ember数据返回DS.Store没有方法'创建' [英] Emberjs- Running ember-data with fixtures returns DS.Store has no method 'create'

查看:107
本文介绍了Emberjs-运行带有灯具的ember数据返回DS.Store没有方法'创建'的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

小提琴 会返回以下错误:

This fiddle it returns the error shown below:

**UnTypeError: Object <DS.Store:ember270> has no method 'create'**

小提琴中的代码粘贴在

The code in the fiddle is pasted below:

 App = Ember.Application.create();

  App.ApplicationController  = Em.Controller.extend({ });

  App.Store = DS.Store.create({
   revision: 7,
   adapter: DS.FixtureAdapter.create()
  });

 //models
 App.Account = DS.Model.extend({
   name: DS.attr('string'),
   user: DS.hasMany('App.User'),
   project: DS.hasMany('App.Project')   
 });


App.User = DS.Model.extend({
  name: DS.attr('string'),
  email: DS.attr('string'),
  password: DS.attr('string'),
  isSelected: DS.attr('boolean',{defaultValue: false }),
  isAdmin: DS.attr('boolean',{defaultValue: false }),
  isOwner: DS.attr('boolean',{defaultValue: false }),                     
  account: DS.belongsTo('App.Account'),
  project: DS.hasMany('App.Project')   
});


App.Project = DS.Model.extend({
 name: DS.attr('string'),
 account: DS.belongsTo('App.Account'),
 user: DS.belongsTo('App.User')   
});

//fixtures for the models

App.Account.FIXTURES = [
 {
    "id": 1,
    "name": "United-shoes"
 },

 {
    "id": 2,
    "name": "Boosters"
 }
];

App.User.FIXTURES = [
  {
    "id": 1,
    "name": 'James',
    "email": 'Denis',
    "password": 'abc',
    "isAdmin": true,
    "account_id": 1
  },

  {
    "id": 2,
    "name": 'mile',
    "email": 'terrence',
    "password": '123',
    "account_id": 2
  }    
 ];

 App.Project.FIXTURES = [
   {
    "id": 1,
    "name": "Increase market share",
   "user_id": 1,
   "account_id": 1
   },

  {
    "id": 2,
    "name": "optimise customers funnel capture",
    "user_id": 2,
    "account_id": 2
  }

];

//ember-data stuff ends

App.ApplicationView = Em.View.extend({
 templateName: 'application'       
});

App.ApplicationView = Ember.View.extend({
   templateName:  'application'
});

App.AccountController = Ember.ArrayProxy.extend({

});

App.AccountView = Ember.View.extend({
 templateName: 'account'  
});

App.UserController = Ember.ArrayProxy.extend({
 // content: 

});

App.UserView = Ember.View.extend({
 templateName: 'user'  
});

App.ProjectController = Ember.ArrayProxy.extend({

});

App.ProjectView = Ember.View.extend({
 templateName: 'project'  
});


App.Router = Em.Router.extend({
  enableLogging: true,
  location: 'history',
  root: Em.Route.extend({
     route: '/',
     index: Em.Route.extend({
       route: '/',
       connectOutlets: function(router) {
         router.get('applicationController').connectOutlet(
  'account');
        router.get('applicationController').connectOutlet(
  'user', App.Store.findAll(App.User));              
      }            
    }),               

    account: Em.Route.extend({
      route: '/account',

        index: Em.Route.extend({
            route: '/'
        })
    }),

    user: Em.Route.extend({
      route: '/user',

        index: Em.Route.extend({
            route: '/'
        })
    }),

    project: Em.Route.extend({
      route: '/project',

        index: Em.Route.extend({
            route: '/'
        })
    })

  }) 
});​


推荐答案

重命名 DS.Store 实例 App.Store App.store

小提琴: http://jsfiddle.net/egKAH/2/

我认为 App.Store 被保留

这篇关于Emberjs-运行带有灯具的ember数据返回DS.Store没有方法'创建'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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