2012-05-08 20 views
5

¿Alguien sabe cómo modelar los subcampos de cualquier campo en ExtJS? Por ejemploExtjs Model Fields with Subfields

Ext.data.Model:

fields:[ 
    {name: 'id', type: 'int'}, 
    {name: 'title', type: 'string'}, 
    {name: 'description', type: 'string'}, 
    {name: 'priority', type: 'auto', fields:[ 
     {name: 'code', type: 'string'} 
    ]}, 
    {name: 'createdBy', type: 'auto'}, 
] 

entonces en mi panel de cuadrícula

Ext.grid.Panel

columns:[ 
    {header:'Title', dataIndex:'title', flex:1}, 
    {header:'Priority', dataIndex:'code'} 
], 

Alguna idea de cómo puedo acceder a 'código' del dataIndex bajo 'prioridad'? ¡gracias por adelantado!

+0

Aquí se puede vea mi ejemplo a una pregunta similar: http://stackoverflow.co m/a/12694550/1496088 –

Respuesta

11

Gracias a @sha - aquí está la respuesta que necesitaba :)

Modelo

fields:[ 

      {name: 'id', type: 'int'}, 
      {name: 'title', type: 'string'}, 
      {name: 'description', type: 'string'}, 
      {name: 'priority', type: 'auto'}, 
      {name: 'code', type: 'string', mapping:'priority.code'}, 
      {name: 'createdBy', type: 'auto'}, 

     ] 

panel ceñidor

columns:[ 

      {header:'Title', dataIndex:'title', flex:1}, 
      {header:'Description', dataIndex:'description'}, 
      {header:'Priority', dataIndex:'code'} 

     ], 
4

Prueba esto:

dataIndex: 'priority.code' 
+0

sí, eso es lo que yo pensaba. No funcionó para mí :( – Stevanicus

+3

puede usar la función 'mapping' del modelo para obtener el campo escalar de la información anidada de su fuente de datos JSON/XML? – sha

+0

gracias por eso ... el mapeo es clave una vez más ... poco documentado :) – Stevanicus