2012-05-22 49 views
2

是否可以根據返回內容在模型中創建字段定義? 我想創建一個由2個其他字段組成的字段。在依賴2個其他字段的模型上創建字段extjs

我現在正在做的是加載商店,然後處理每條記錄並設置數據。這種感覺有點unelegant雖然:

Ext.define("moddie", { 
    extend:'Ext.data.Model', 
    config:{ 
     fields  : [ 
      "id", 
      "move", 
      "moveId" 
     ] 
    } 
}); 

Ext.create('Ext.data.Store',{ 
    model:'moddie', 
    proxy:{ 
     type:'ajax', 
     url: 'json.json', 
     reader: { 
       type: 'json', 
      } 
     }, 
    }, 
    config:{ 
     listeners:{ 
      load:{ 
       fn : function(s,r,o){ 
       s.each(function(record){ 
        record.set(moveId,id+move) 
       } 
      } 
     } 
    } 
}) 

我想定義字段作爲CONCAT -INSIDE-模型。喜歡的東西:

Ext.define("moddie", { 
    extend:'Ext.data.Model', 
    config:{ 
     fields  : [ 
      "id", 
      "move", 
        {name:"moveId",value:id+move}//can I, how should I define this? 
     ] 
    } 
}); 

回答

4

絕對。

Ext.define("moddie", { 
    extend:'Ext.data.Model', 
    fields: [ 
     { name: 'id' }, 
     { name: 'move' }, 
     { name: 'moveId', convert: function(v, r) { 
      return r.get('id') + r.get('move'); 
     }}, 
    ] 
}); 
+0

啊,發揮良好。 – Alex

相關問題