0

我有一个小问题,如果你能帮助我,那就太好了。我无法将自己的 ID 插入本地存储。

ext.define('EMC.model.ReferenceData', {
    extend: 'Ext.data.Model',

    config: {
        identifier: {
            type: 'simple'
        },

        idProperty: 'Id',

        fields: [
                 {name: 'Id', type: 'string'},
                 {name: 'Description', type: 'string'},
                 {name: 'syncChangeVersion', type: 'integer', mapping: 'SysChangeVersion'},
                 {name: 'TypeEnum', type: 'string'}         
        ]     


    }
});

这是我的项目的模型,商店如下所示。

Ext.define("EMC.store.SyncReferenceData", {
    extend : "Ext.data.Store",
    requires : [ 'Ext.data.proxy.LocalStorage' ],

    config : {
        model : 'EMC.model.ReferenceData',
        storeId : 'referenceStore',
        sorters : 'Id',


        proxy : {
            type : 'localstorage',
            id : 'reference_data'
        },

        autoSync : true,
        autoLoad : true


    }
});

这是我创建的使用控制器将数据插入本地存储的短语。

var frmModel2 = Ext.create('EMC.model.ReferenceData',{
    Id : '13',
    Description : 'lole',
    syncChangeVersion : 0,
    TypeEnum  : '199'
    });
    ReferenceStore.add(frmModel2); 
    ReferenceStore.sync();                                                                                  

但是当我看到本地存储时它是空的。但如果我评论 ID:'13',那么它将添加到本地存储,ID 为“ext-record-293”。为什么我不能在商店中插入自己的 ID?

4

1 回答 1

0

试试这样。。

   Ext.define('EMC.model.ReferenceData', {
        extend: 'Ext.data.Model',

        config: {
            dProperty : 'uniqueid', // dummy name(not a field)
            clientIdProperty : 'Id',

            fields: [
                {name: 'Id', type: 'string'},
                {name: 'Description', type: 'string'},
                {name: 'syncChangeVersion', type: 'integer', mapping: 'SysChangeVersion'},
                {name: 'TypeEnum', type: 'string'}         
            ]            

        }
    });
于 2013-07-12T10:08:21.377 回答