0

次のように、ストアのプロキシに nameProperty を設定しました: コード:

writer : {
        type : 'json',
        nameProperty : 'mapping',
        root : 'PerVO'
    }

そして、私のモデルでは、マッピングは次のようになります:

        {
            name : 'modules',
            mapping : 'modules.collection',
            defaultValue: []
        },

ストアで CRUD 操作を呼び出すと、これは正常に機能します。ここで、他の操作のためにサーバーに送信される形式のデータを取得したいと考えています。問題は、ストアからレコードを取得すると、マッピングが失われることです。では、Ext.data.writer.Json またはその他の API を使用して、マッピングが適用された状態でサーバーに送信されるときに生成されるデータを正確に生成するにはどうすればよいですか。

これは、ストアが保存のために送信するものです (このようなデータが必要です。注: 違いは「コレクション:」です)

    "modules": {
        "collection": {
            "isActive": 1,
            "metadata": {
                "actionCodes": "",
                "memos": ""
            },
            "moduleCode": "OM",
            "moduleId": 250,
            "moduleName": "Org Management",
            "success": false,
            "viewId": 0
        }
    },

これは、レコードを検索したときにストアから取得したものです。

                 "modules": {
                    "isActive": 1,
                    "metadata": {
                        "actionCodes": "",
                        "memos": ""
                    },
                    "moduleCode": "OM",
                    "moduleId": 250,
                    "moduleName": "Org Management",
                    "success": false,
                    "viewId": 0
                },

ストアからサーバーに送信されたデータを取得する必要があります。ありがとうNohsib

4

1 に答える 1

0

マッピングの名前を次のように変更するだけです

{
   name : 'collection',
   mapping : 'modules.collection',
   defaultValue: []
}

nameconfigは、内で使用される名前ですmodel。オブジェクトのdataプロパティを見ると、マッピングで使用される値がに値を格納するために使用されます。オブジェクトからデータを取得するときにも使用するのと同じ名前です。元。modelnamemodelnamemodelmodel.get(name);

APIから。

モデル内でフィールドが参照される名前

于 2012-11-04T10:36:18.353 に答える