为什么我的过滤器在 v2.ODataModel“读取”中不起作用?

Ais*_*son 1 sapui5

我正在使用 OData 模型来读取数据。但这不起作用。检查下面的代码:

getGuid: function(pernr) {
  var self = this;
  var url = "/PersonalDetailSet?$filter=Pernr eq '00000001'";
  self.setBusy(true);
  this.oModel.read(url, {
    success: function(res) {
      // ...
    },
    error: function() {
      // ...
    }
  });
}
Run Code Online (Sandbox Code Playgroud)

我不知道为什么现在过滤器url不起作用?

小智 5

  1. $filter首先检查您的 OData 服务是否支持该查询。
  2. 正确使用read方法:
    myV2ODataModel.read("/PersonalDetailSet"/* No $filter queries here! */, {
      filters: [ // <-- Should be an array, not a Filter instance!
        new Filter({ // required from "sap/ui/model/Filter"
          path: "myField",
          operator: FilterOperator.EQ, // required from "sap/ui/model/FilterOperator"
          value1: "..."
        })
      ],
      // ...
    });
    Run Code Online (Sandbox Code Playgroud)