Ich versuche derzeit herauszufinden, wie auf Metadaten zugegriffen werden kann, wenn der Aufruf store.findRecord()
verwendet wird.Ember.js: Zugriff auf JSON-API-Metadaten über den store.findRecord-Aufruf
In den Führungen (http://guides.emberjs.com/v2.1.0/models/handling-metadata/) heißt es, dass Metadaten, indem Sie die folgenden zugegriffen werden kann:
store.query('post').then((result) => {
let meta = result.get('meta');
})
Ich hatte gehofft, dies funktionieren würde, wenn findRecord
auch
store.findRecord('book', params.id, {adapterOptions: {query: params}}).then((result) => {
let meta = result.get('meta');
})
jedoch mit diesem immer gibt für die Eigenschaft meta
undefined zurück. Ich nehme an, dass Metadaten nicht gesetzt werden, wenn findRecord
verwendet wird. Ich kehre gültige JSON-API mit einem meta
Eigenschaft auf der obersten Ebene wie folgt aus:
{
"meta": {
"page": {
"number": 1,
"size": 100,
"total": 20
},
"data":[
// data here
]
}
}
Gibt es eine Möglichkeit, die Metadaten vom Server zurück zuzugreifen, wenn Findrecord() und die JSONAPISerializer und JSONAPIAdapters mit?
Vielen Dank!
Ich verwende die folgenden Versionen:
Ember : 2.1.0
Ember Data : 2.1.0
jQuery : 1.11.3
Ist der Datensatz bereits im Speicher vorhanden, wenn Sie den findRecord ausführen? –
Guter Gedanke, aber es ist nicht schon im Laden vorhanden. Ich habe auch überprüft, um sicherzustellen, dass im Chrome Inspector, dass die Netzwerkanforderung gemacht wird und es ist. Ich fange an zu denken, dass dies gerade nicht unterstützt wird. Basierend auf einigen Diskussionen in slack scheint der Metaschlüssel nur für Sammlungen zu funktionieren. – Sarus
Werfen Sie einen Blick auf die Ember Guides auf 'query' vs.' queryRecord' vs 'findRecord' usw. Ich denke, was Sie mit' findRecord' versuchen ist nicht möglich: http: //guides.emberjs. com/v2.1.0/models/finding-records/ – vikram7