Ich habe ein Problem mit Modell und Serializer. Ich habe mir die Dokumentation angeschaut und kann keine Lösung finden. Meine App ist mit einer Django-Rest-API verbunden."str ist undefined" auf findRecord
Django Antwort:
{
"id": 1,
"url": "http://localhost:8000/users/1/",
"username": "username",
"email": "[email protected]",
"is_staff": true
}
Das Modell:
export default DS.Model.extend({
url : DS.attr('string'),
username : DS.attr('string'),
email : DS.attr('string'),
});
ich die Antwort mit einem Serializer geändert haben "Daten" enthalten:
export default DS.JSONAPISerializer.extend({
primaryKey: 'id',
normalizeFindRecordResponse(store, type, payload, id) {
console.log('payload',payload)
return {
data: {
'id': id,
'url': payload.url,
'username': payload.username,
'email': payload.email,
}
} ;
}
});
Die Route:
export default Ember.Route.extend({
model() {
return this.store.findRecord('users', 1);
}
});
Eine andere Version der Route die gleichen Fehler:
export default Ember.Route.extend({
model() {
this.store.findRecord('users', '1').then(function(user){
console.log('user', user);
}).catch(function(e){
console.log('e', e);
});
}
});
Schließlich hat Ember Inspektor das Modell aber alle Werte als undefiniert und „str ist nicht definiert“ auf der Konsole.
Der erste Punkt löste das Problem. Danke für Ihre Hilfe. – carloscba