dojo 1.10 JsonRest idAttribute -服务器在PUT中传递浮点数



刚刚开始使用dojo/JsonRest,但是在发送更新回我的服务器时有一些问题。我有两个问题,我卡住了;

下面的代码生成一个网格,其中一列设置为可编辑。我的json数据中的主键是"jobName"属性(因此在JsonRest存储中的idAttribute)。

第一个问题是关于PUT中的URI;-当我调用dataStore.save()服务器得到一个PUT,但URI是/myrestservice/Jobs/0.9877865987(它每次都改变,但总是一个浮点数)-我不知道道场从哪里得到浮点数?这不是我那一行的idAttribute值。我怎样才能让PUT尊重JsonRest存储中的idAttribute ?-我确实尝试在MemoryStore中设置idProperty为"jobName",但这将PUT更改为POST并删除了浮动,但我仍然没有在URI中获得jobName,这是我的REST服务器需要的。

关于PUT内容的第二个问题;—PUT包含整行。我只想要idAttribute和改变的数据,这可能吗?

我已经看过了示例和文档,但是没有很多处理JsonRest的PUT/POST部分的示例。

感谢
    var userMemoryStore = new dojo.store.Memory( );
    var userJsonRestStore = new dojo.store.JsonRest({target:"/myrestservice/Jobs/", idAttribute:"jobName"});
    var jsonStore = new dojo.store.Cache(userJsonRestStore, userMemoryStore);
    var dataStore = new dojo.data.ObjectStore( {objectStore: jsonStore } );
    /*create a new grid*/
    var grid = new dojox.grid.DataGrid({
        id: 'grid'
        ,store: dataStore
        ,structure: layout
        ,rowSelector: '20px'}
        ,"gridDiv");
    grid.startup();
    dojo.query("#save").onclick(function() {
                    dataStore.save();
                });

我认为你想要idProperty,而不是idAttribute。它也可能有助于设置idProperty在内存存储被用来缓存;这可能就是产生随机浮点数的原因。

至于第二个问题,这可能需要定制;我不相信OOTB存储(或网格)通常期望发送部分项目。

相关内容

  • 没有找到相关文章

最新更新