【发布时间】:2015-05-29 04:05:49
【问题描述】:
我正在尝试开发一个 Dojo DataGrid,它从分类的 BidsByDriver 视图返回用户的文档,并允许他们编辑网格中的优先级字段。在克服了使用 keys 属性过滤 categoryFilter 的障碍之后,使用 xe:viewFileItemService 读/写服务很容易设置。但是,xe:viewFileItemService 作为数据源的问题是,在网格中显示用户文档后,视图中的每个条目都会显示空行。
为了绕过空白行,我创建了一个 xe:customRestService,它只为当前用户的文档返回 jasonData。这解决了我的空行问题,但我的数据源的读/写格式不正确,无法支持网格内编辑。
这是从 xe:customRestService 返回的结果 Json 数据 ...
[{"Driver":"ddd","BidID":"123","Priority":"1","Trip":"644"},
{"Driver":"ddd","BidID":"123","Priority":"2","Trip":"444"},
{"Driver":"ddd","BidID":"123","Priority":"4","Trip":"344"},
{"Driver":"ddd","BidID":"123","Priority":"4","Trip":"643"}
]
这是我正在加载的 Dojo 模块:
<xp:this.resources>
<xp:dojoModule name="dojo.store.JsonRest"></xp:dojoModule>
<xp:dojoModule name="dojo.data.ObjectStore"></xp:dojoModule>
</xp:this.resources>
这里是为网格开发数据存储的脚本:
<xp:scriptBlock id="scriptBlock2">
<xp:this.value><![CDATA[
var jsonStore = new dojo.store.JsonRest({target: "InGridCustom.xsp/pathinfo"});
var dataStore = dojo.data.ObjectStore({objectStore: jsonStore});
]]></xp:this.value>
</xp:scriptBlock>
除了提供网格内编辑支持之外,所有这些都非常有效。任何想法表示赞赏。
【问题讨论】:
-
Paul,您是否为您的网站启用了 HTTP PUT?这个答案有帮助吗? stackoverflow.com/a/20383456/785061
-
启用 HTTP PUT 后,PATCH n DELETE 仍然没有区别......我的 custonRestService 仍然不支持网格内编辑
标签: javascript json rest xpages dojox.grid.datagrid