2017-04-26 9 views
0

EmberのqueryRecordが正常に動作するのに問題があります。私はサーバーからサイトの設定を取得しようとしています。Emberモデル検索レコード

//app/routes/application.js

model: function(){ 
    return this.get('store').queryRecord('config',{}).then(function(config) { 
    console.log(config.get('appname')); 
    }); 
} 

//app/adapters/config.js

import DS from "ember-data"; 
import ENV from './../config/environment'; 

export default DS.Adapter.extend({ 
    queryRecord(modelName, query) { 
     return Ember.$.getJSON(ENV.APP.apiFull + 'config'); 
    } 
}); 

//app/serializers/applications.js

import DS from 'ember-data'; 

export default DS.RESTSerializer.extend({ 
    keyForAttribute: function(attr, method) { 
    return Ember.String.underscore(attr).toUpperCase(); 
    } 
}); 

//サーバーAJAXから返されるJSON呼び出し

{"config":{"id":1,"environment": "development", "appname":"Sample App Name"}} 

// app/routes/application内のconsole.logステートメントは未定義を返します。これはバージョン2.9のEmberのドキュメントとすべて一致しているようです。私は間違って何をしていますか?

+0

サイドノート:モデルフックで結果を返すのを忘れないでください。 – kumkanillam

+0

モデルフックでリターンを追加しましたが、問題のステートメントは変わりません。 – user6041966

+1

AjaxレスポンスはREST形式になっているので、adapters/config.jsファイルは 'DS.RESTAdapter' -https://emberjs.com/api/data/classes/DS.RESTAdapter.html#method_queryRecordを拡張する必要があります。 – kumkanillam

答えて

0

@Lux、シリアライザに向かって私を指してくれてありがとう。それがモデルのメンバーの名前を調べてくれました。私はモデルで強調していましたが、JSONはサーバーから来ていません。

関連する問題