网格面板extjs4的子数组模型映射问题

网格面板extjs4的子数组模型映射问题,extjs4,extjs-mvc,Extjs4,Extjs Mvc,论坛成员我在将json数据映射到我的模型时遇到了一些问题 我收到的json数据如下所示 { "companydata": [{ "cmpname": "Kintu Designs Pvt ltd.", "cmptitle": "Kintu Designs Pvt ltd.", "cmpdesc": "<b>Kintu Designs Pvt ltd.</b>", "cmpfax": "81288121

论坛成员我在将json数据映射到我的模型时遇到了一些问题

我收到的json数据如下所示

{
    "companydata": [{
        "cmpname": "Kintu Designs Pvt ltd.",
        "cmptitle": "Kintu Designs Pvt ltd.",
        "cmpdesc": "<b>Kintu Designs Pvt ltd.</b>",
        "cmpfax": "8128812153",
        "cmpcontact": "8128812153",
        "cmpwebsite": "www.kintudesigns.com",
        "cmpemail1": "yaryan997@gmail.com",
        "cmpemail2": "yaryan997@gmail.com",
        "cmpcountry": "India",
        "cmpstate": "Gujarat",
        "cmpcity": "Surat",
        "cmpaddress": "Kintu Designs Pvt ltd. Nanpura Surat",
        "departments": [{
            "departname": "Programmers",
            "departdescr": "<b>?Programmers</b>",
            "createdby": 1,
            "createdon": 1200022207000,
            "modifiedon": 1200022207000,
            "modifiedby": 1,
            "id": 1
        }],
        "cmplogo": "calendar.png",
        "cmplogopath": "upload/images/",
        "cmpcreatedby": 1,
        "cmpcreatedon": 1200011900000,
        "cmpmodifiedon": 1200011900000,
        "cmpmodifiedby": 0,
        "id": 1
    }],
    "total": 1,
    "success": true
}
但我仍然无法在网格面板中显示部门名称。 我的网格面板代码如下所示

{
    "companydata": [{
        "cmpname": "Kintu Designs Pvt ltd.",
        "cmptitle": "Kintu Designs Pvt ltd.",
        "cmpdesc": "<b>Kintu Designs Pvt ltd.</b>",
        "cmpfax": "8128812153",
        "cmpcontact": "8128812153",
        "cmpwebsite": "www.kintudesigns.com",
        "cmpemail1": "yaryan997@gmail.com",
        "cmpemail2": "yaryan997@gmail.com",
        "cmpcountry": "India",
        "cmpstate": "Gujarat",
        "cmpcity": "Surat",
        "cmpaddress": "Kintu Designs Pvt ltd. Nanpura Surat",
        "departments": [{
            "departname": "Programmers",
            "departdescr": "<b>?Programmers</b>",
            "createdby": 1,
            "createdon": 1200022207000,
            "modifiedon": 1200022207000,
            "modifiedby": 1,
            "id": 1
        }],
        "cmplogo": "calendar.png",
        "cmplogopath": "upload/images/",
        "cmpcreatedby": 1,
        "cmpcreatedon": 1200011900000,
        "cmpmodifiedon": 1200011900000,
        "cmpmodifiedby": 0,
        "id": 1
    }],
    "total": 1,
    "success": true
}
“我的网格”面板正确显示公司标题,但网格面板中不显示部门名称


请告诉我上面的代码有什么问题。

首先,json中的departments属性返回一个departments数组,因此无法将其映射到departments.departname。我想您只有一个部门,因为否则您无法使用映射,您可以将json更改为在部门中只有一个对象,然后使用映射

另一种解决方案是映射到存储中的departments字段,并将对象保存在该字段中{name:'departments',mapping:'departments'}

{
                    xtype: 'gridcolumn',
                    dataIndex: 'departname',
                    text: 'Department Name',
                    renderer: function(value){
                      //if you leave your json like you curently have it 
                      return value[0].departname;
                      //or if you have only a department object
                      return value.departname;
                    }
                }
{
                    xtype: 'gridcolumn',
                    dataIndex: 'departname',
                    text: 'Department Name',
                    renderer: function(value){
                      //if you leave your json like you curently have it 
                      return value[0].departname;
                      //or if you have only a department object
                      return value.departname;
                    }
                }