0

在我的控制器中,我使用“record.save”功能。在 extjs 4.07 中,这会将单个记录作为 json 发送。我在 4.1 中注意到它现在发送一个记录数组。这很好,因为我可以更新我的服务器控制器来处理一个数组(如果可以只指定一条记录就好了)

虽然我的主要问题是我在我的 json 中收到了两次属性“Id”。Id 是我的记录类的属性。如果您查看下面的 Json,您可以看到“Id”已附加到我的 Json 的末尾。这是什么原因?

[{
   "Id":"f3e7def0-42e6-41c9-a2ba-a04400b7c568",
   "QuotedPrice":"\u00a3500.00",
   "Notes":"",
   "JobQuantity":"0",
   "DeliveryDate":"",
   "ProjectId":"",
   "id":""
}]

这是我的模型(我删除了一些 json 以使其更具可读性)

Ext.define('Mis.model.Job', {
    extend: 'Ext.data.Model',
    fields: [
                {
                    mapping: 'Id',
                    name: 'Id'
                }
                ,
                {
                    mapping: 'Value',
                    name: 'QuotedPrice'
                },
                {
                    mapping: 'Name',
                    name: 'Name'
                },
                {
                    mapping: 'JobType',
                    name: 'JobType'
                },
                {
                    mapping: 'ClientPo',
                    name: 'ClientPO'
                },
                {
                    mapping: 'FilesOver',
                    name: 'FilesOver'
                },
                {
                    mapping: 'PreviousJobId',
                    name: 'PreviousJobId'
                },
                {
                    mapping: 'EstimateValue',
                    name: 'Estimate'
                },
                {
                    mapping: 'SalesContact',
                    name: 'SalesContact'
                },
                {
                    mapping: 'AccountHandler',
                    name: 'AccountHandler'
                },
                {
                    mapping: 'AssemblyTime',
                    name: 'AssemblyTime'
                },
                {
                    mapping: 'DespatchDate',
                    name: 'DespatchDate'
                },
                {
                    mapping: 'ProductionFiles',
                    name: 'ProductionFiles'
                },
                {
                    mapping: 'Notes',
                    name: 'Notes'
                },
                {
                    mapping: 'Quantity',
                    name: 'JobQuantity'
                },
                {
                    mapping: 'DeliveryDate',
                    name: 'DeliveryDate'
                },
                {
                    mapping: 'ProjectId',
                    name: 'ProjectId'
                }
    ],
        proxy: {
           type: 'ajax',
           url: 'https://www.xxx.localhost/',
               api:
               {
                  read: '/Jobs/Read/' + jId, 
                  update: '/Jobs/Update',
                  create: '/Jobs/Update',
                  destroy: '/Jobs/Remove'
               },
               reader: {
                           type: 'json',
                           root: 'Jobs',
                           successProperty: 'success',
                           totalProperty: 'Total'
                       }
           }
});
4

1 回答 1

1

尝试将以下内容添加到您的模型中:

...
idProperty: 'Id',
...
于 2012-05-09T16:06:34.143 回答