处理路线时出错:home未找到' App.undefined'

时间:2016-10-07 13:47:49

标签: javascript django ember.js ember-data

DEBUG: Ember      : 1.7.1
DEBUG: Ember Data : 1.0.0-beta.12
DEBUG: Handlebars : 1.1.2
DEBUG: jQuery     : 1.10.2

我认为的问题是我的用户模型上的belongsTo属性。 (这也发生在我的应用程序中的其他belongsTo属性上)。我有一个Django后端,当我注释掉网络时返回响应:属性。

{
    email: "test@test.com",
    first_name: "Test",
    global_code: "daht64q691zy4k887ch",
    global_id: "GBID-USER-dat64q6917zy4k887ch",
    institution_gbid: "GBID-GINS-567j53ey0lojsu2kys",
    institution_name: "Some University",
    last_name: "Testing",
    network: { },
    view_policy: {
        capability: "system:view",
        description: "Anyone can view a user",
        hold: true,
        id: "daht64q691y4k887ch:system:view",
        values: ""
    }
}

用户模型代码:

App.User = DS.Model.extend({
        first_name: DS.attr('string'),
        last_name: DS.attr('string'),
        global_id: DS.attr('string'),
        network: DS.belongsTo('basicgrouping')
        }):

基本分组模型代码:

App.Basicgrouping = DS.Model.extend({
        global_id: DS.attr('string'),
        name: DS.attr('string'),
        gbid_code: function(){
            return getGBIDCode(this.get('global_id'));
        }.property('global_id')
    });

调试ember-data我在以下代码中放置了console.log():

  relationshipsByName: Ember.computed(function() {
    var map = Map.create();

    this.eachComputedProperty(function(name, meta) {
      console.log(name, meta);
      if (meta.isRelationship) {
        meta.key = name;
        var relationship = relationshipFromMeta(this.store, meta);
        relationship.type = typeForRelationshipMeta(this.store, meta);
        map.set(name, relationship);
      }
    });

Console response from the method

这似乎表明它找不到它所属对象的类型(Basicgrouping),因为它正在返回App.undefined。

我的理论是,在解析服务器响应和可能的有效负载响应时可能需要做些什么。这也发生在我的代码中的其他belongsTo关系中。

1 个答案:

答案 0 :(得分:0)

事实证明,有一个文件覆盖了某些DS。方法并导致发送空类型。我正在删除垫片的使用过程,但不知道它正被使用。

感谢来自ember社区的Bmacs帮助调试问题。