0

Drupal Services エンドポイントから Sencha Touch 2 アプリケーションにエンティティを読み込もうとしています。JSON 出力は次のようになります (簡略化)。

{
  nid: 1
  title: 'Test'
  body: {
    'en': [
      'This is a test.'
    ]
  }
}

これがモデルの coffeescript コードです。

Ext.define 'Node',
  extend: 'Ext.data.Model'

  config:
    idProperty: 'nid'

    fields: [
      { name: 'nid', type: 'integer' }
      { name: 'title', type: 'string' }
      { name: 'language', type: 'string' }
      { name: 'body', type: 'auto', convert: convertField }
    ]

    proxy:
      type: 'jsonp'
      url: 'http://www.mydomain.com/rest/node'

convertField = (value, record) ->
  console.log value # always "undefined"
  return 'test'

jsonp プロキシを使用したモデルの読み込みは機能しますが、アトミック フィールド (「nid」や「title」など) のみが入力されます。modelsフィールドに"convert" 関数を追加しようとしましたが、パラメーターは常に未定義です。bodyvalue

複雑な json データをモデル フィールドにロードする方法はありますか? それとも、モデル関係システムを使用する必要がありますか (これは非常に面倒です...)。Ext.data.Reader をオーバーライドすることも考えましたが、どこから始めればよいかわかりません。

4

0 に答える 0