#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 за помощь в устранении проблемы.