Sencha/Extjs 带所有参数的 rest 调用

Sencha/Extjs rest call with all parameters

我使用的是 ExtJs 5.1.1,我编写了一个带有网格的简单视图,并选择一行对应的模型 属性 在某些文本字段中是可编辑的。 编辑完成后,按钮 'save' 调用 Model.save() 方法,该方法使用配置的其余代理将更改写入服务器。

代理进行的调用有两个,第一个是 OPTIONS 调用以了解允许使用哪种方法,第二个调用是 PUT。 我的问题是 PUT json 只包含更改的属性。 我希望我的应用程序发送 PUT 中的所有属性,而不是仅发送更改的子集。

这是代理配置,还是我应该使用另一种代理,例如 ajax?

一些代码片段:

型号:

Ext.define('myApp.model.CvModel', {
    extend: 'Ext.data.Model',
    alias: 'viewmodel.cv',  

    idProperty : 'code',
    proxy: {
        type: 'rest',

        url: 'http://localhost:8080/CV/resource/rest/cvs/CodeSystem/Domain',
        paramsAsJson: true,
        reader: {
            type: 'json',
            rootProperty: 'Test_data'
        }

    },


    fields: [{
        ...

控制器:

onSave: function () {
            var selCv = this.getViewModel().get('selectedCv');
            selCv.save();
            ....

您需要使用 writeAllFields: true 在代理上指定编写器配置。默认情况下它是 false,默认编写器本身就是 {type: 'json'}.