余烬类型未定义且加载路线出错,具有一对多关联
Ember type is undefined & error loading route with one-to-many association
我已经在我的 Ember 应用程序中引入了对两个模型的一对多关联,我遇到了这些相当神秘的错误:
[09:01:20.450] TypeError: type is undefined @ http://emberjs.com.s3.amazonaws.com/getting-started/ember-data.js:2284
[09:01:20.444] DEPRECATION: Action handlers contained in an `events` object are deprecated in favor of putting them in an `actions` object (error on <Ember.Route:ember362>)
trigger@file:///home/zen/ember-project/js/libs/ember-1.0.0.js:29641
handleError@file:///home/zen/ember-project/js/libs/ember-1.0.0.js:29903
invokeCallback@file:///home/zen/ember-project/js/libs/ember-1.0.0.js:8055
Promise.prototype.then/<@file:///home/zen/ember-project/js/libs/ember-1.0.0.js:8109
EventTarget.trigger@file:///home/zen/ember-project/js/libs/ember-1.0.0.js:7878
reject/<@file:///home/zen/ember-project/js/libs/ember-1.0.0.js:8180
DeferredActionQueues.prototype.flush@file:///home/zen/ember-project/js/libs/ember-1.0.0.js:5459
Backburner.prototype.end@file:///home/zen/ember-project/js/libs/ember-1.0.0.js:5545
Backburner.prototype.run@file:///home/zen/ember-project/js/libs/ember-1.0.0.js:5584
executeTimers@file:///home/zen/ember-project/js/libs/ember-1.0.0.js:5807
Backburner.prototype.setTimeout/laterTimer<@file:///home/zen/ember-project/js/libs/ember-1.0.0.js:5666
[09:01:20.444] Error while loading route: (new TypeError("type is undefined", "http://emberjs.com.s3.amazonaws.com/getting-started/ember-data.js", 2284))
我不完全确定我是否应该在DS.belongsTo('modelName')
中大写、驼峰或小写模型名称,但是当它们骆驼化时我会收到此错误,其他大小写收到"找不到模型"错误,所以我认为这是最好的错误。
我的模型和夹具数据:
// Models
App.ServiceProvider = DS.Model.extend({
name: DS.attr('string'),
email: DS.attr('string'),
customers: DS.hasMany('customer')
});
App.Customer = DS.Model.extend({
serviceprovider: DS.belongsTo('serviceProvider'),
firstname: DS.attr('string'),
lastname: DS.attr('string'),
email: DS.attr('string')
});
// Fixtures
App.ServiceProvider.FIXTURES = [
{
id: 1,
name : "Some Org.",
email : "admin@someorg.com.au",
customers : [1, 2]
},
{
id: 2,
name : "Some Co.",
email : "admin@someco.com.au",
customers : [3, 4]
}
];
App.Customer.FIXTURES = [
{
id: 1,
firstname : "John",
lastname : "Smith",
email : "admin@someorg.com.au",
serviceprovider : [1]
},
{
id: 2,
firstname : "Jane",
lastname : "Smith",
email : "admin@someco.com.au",
serviceprovider : [1]
},
{
id: 3,
firstname : "Jerry",
lastname : "Smith",
email : "admin@someco.com.au",
serviceprovider : [2]
},
{
id: 4,
firstname : "Janet",
lastname : "Smith",
email : "admin@someco.com.au",
serviceprovider : [2]
}
];
我对 Ember 很陌生,任何见解都值得赞赏。
我刚刚想通了,问题是使用数组作为一对一关系的 id。
这是有问题的夹具
App.Customer.FIXTURES = [
{
id: 1,
firstname : "John",
lastname : "Smith",
email : "admin@someorg.com.au",
serviceprovider : [1]
}
]
这是工作的一个
App.Customer.FIXTURES = [
{
id: 1,
firstname : "John",
lastname : "Smith",
email : "admin@someorg.com.au",
serviceprovider : 1
}
]
相关文章:
- 如何在Parse中创建一对多关系
- Sails.js获得多对多关联计数
- Ember数据一对多关系不起作用
- 节点.js / 续集.js / 快递.js - 如何插入多对多关联?(同步/异步?
- 解析-在数组一对多关系中获取父项及其子项
- 集合作为 EmberJS 中的属性?(一对多关系)
- JayData一对多预测
- 我将如何解决余烬数据中的这种一对多态关系
- 与 RequireJS 和 Backbone 的一对多和一对一关系
- 从SQL一对多到解析NoSQL
- 续集JS:包括一对多关系船
- 帆.js:模型本身的一对多关系
- 余烬类型未定义且加载路线出错,具有一对多关联
- 流星:如何使关系一对多
- 如果一个模型在续集中引用自身,如何让所有孩子或父母在多对多关联中
- 对于具有一对多关系的主干模型,存储“;许多“;数组中的模型,而不是Collection
- Sails.js-一对多映射
- 主干.js和嵌入式一对多关联
- 如何使用Sails 0.10.x在一对多关系中引用关联模型
- Sequelize与Postgresql的一对多关联