gpt4 book ai didi

odata - 如何在 SAPUI5 OData 请求中设置 `search` URL 参数?

转载 作者:行者123 更新时间:2023-12-05 05:17:18 25 4
gpt4 key购买 nike

我希望我的 SAPUI5 ODataModel 发送表单的 OData 请求

https://<my-server>/<my-service>/<my-resource>?search='lalaland'

有大量示例如何使用 model.filter(new Filter(...)); 添加过滤器,但这不是我想要的。过滤意味着我直接用某个比较器来处理某个属性。搜索意味着我对一般资源进行寻址,并让 OData 服务决定搜索哪些属性以及如何搜索。

似乎有可能的一件事是:

model.bindRows(..., { "customData": {"search": "lalaland"}});

但这也不是我想要的,因为它会在创建模型时设置一次搜索词,但以后无法在用户输入时更新它。

有趣的是,SAPUI5 自己的 SmartTable 实现完全执行了我想要的那种查询 - 但没有揭示没有 SmartTable 我如何做到这一点的可能性。

最佳答案

找到一个解决方案:

oList = this.byId("list"); // or oTable
oBindingInfo = oList.getBindingInfo("items"); // or "rows"
if (!oBindingInfo.parameters) {
oBindingInfo.parameters = {};
}
if (!oBindingInfo.parameters.custom) {
oBindingInfo.parameters.custom = {};
}
oBindingInfo.parameters.custom.search = sValue;
oList.bindItems(oBindingInfo);

但是,我并不特别喜欢 bindItems 部分。要求它一次又一次地重新绑定(bind)整个实体集看起来有点夸张。所以让这个问题悬而未决,以防有人有更好的主意。

关于odata - 如何在 SAPUI5 OData 请求中设置 `search` URL 参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49429130/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com