Ошибка при обработке маршрута: home Не найдена модель для ‘App.undefined’

#javascript #django #ember.js #ember-data

#javascript #django #ember.js #ember-данные

Вопрос:

 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, которая возвращает ответ, когда я комментирую атрибут network:.

 {
    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);
      }
    });
  

Ответ консоли от метода

Похоже, это показывает, что тип объекта, к которому он принадлежит, не найден (Basicgrouping), поскольку он возвращает App.undefined.

Моя теория заключается в том, что это может иметь какое-то отношение к анализу ответа сервера и, возможно, ответа полезной нагрузки. Это также происходит в других отношениях belongTo в моем коде.

Ответ №1:

Оказывается, был файл, который переопределял некоторые из DS. методов и вызывал отправку пустого типа. Я находился в процессе удаления использования прокладки, но не знал, что она используется.

Спасибо Bmacs из сообщества ember за помощь в устранении проблемы.