From 9b87090a9b839f567da9c82965ea2b9ddb0c636f Mon Sep 17 00:00:00 2001 From: guqing <38999863+guqing@users.noreply.github.com> Date: Tue, 2 Jul 2024 11:49:22 +0800 Subject: [PATCH] docs: add docs for list options builder (#380) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ### What this PR does? 添加 ListOptions builder 的文档说明 see also https://github.com/halo-dev/halo/pull/6148 ```release-note None ``` --- .../api-reference/server/extension-client.md | 30 +++++++++++++++---- .../api-reference/server/extension-client.md | 30 +++++++++++++++---- 2 files changed, 50 insertions(+), 10 deletions(-) diff --git a/docs/developer-guide/plugin/api-reference/server/extension-client.md b/docs/developer-guide/plugin/api-reference/server/extension-client.md index 14d48d4..7c31a04 100644 --- a/docs/developer-guide/plugin/api-reference/server/extension-client.md +++ b/docs/developer-guide/plugin/api-reference/server/extension-client.md @@ -118,10 +118,12 @@ public class ListOptions { `FieldSelector` 支持比自动生成的 APIs 中更多的查询条件,可以通过 `run.halo.app.extension.index.query.QueryFactory` 来构建。 ```java -FieldSelector.of(QueryFactory.and( - QueryFactory.equal("name", "test"), - QueryFactory.equal("age", 18) -)) +ListOptions.builder() + .fieldQuery(QueryFactory.and( + QueryFactory.equal("name", "test"), + QueryFactory.equal("age", 18) + )) + .build(); ``` 支持的查询条件如下: @@ -166,9 +168,27 @@ Query query = and( or(equal("dept", "A"), equal("dept", "B")), or(equal("age", "19"), equal("age", "18")) ); -FieldSelector.of(query); +ListOptions.builder() + .fieldQuery(query) + .build(); ``` +### 构建 ListOptions + +ListOptions 提供了 `builder` 方法用于构建查询条件,`fieldQuery` 方法用于传递字段查询条件,`labelSelector` 方法用于传递标签查询条件。 + +```java +ListOptions.builder() + .labelSelector() + .eq("key-1", "value-1") + .end() + .fieldQuery(QueryFactory.equal("key-2", "value-2")) + .build(); +``` + +- `labelSelector` 之后使用 `end` 方法结束标签查询条件的构建。 +- `andQuery` 和 `orQuery` 用于组合多个 `FieldSelector` 查询条件。 + ### 排序 `listBy` 和 `listAll` 方法都支持传递 `Sort` 参数,用于传递排序条件。 diff --git a/versioned_docs/version-2.17/developer-guide/plugin/api-reference/server/extension-client.md b/versioned_docs/version-2.17/developer-guide/plugin/api-reference/server/extension-client.md index 14d48d4..7c31a04 100644 --- a/versioned_docs/version-2.17/developer-guide/plugin/api-reference/server/extension-client.md +++ b/versioned_docs/version-2.17/developer-guide/plugin/api-reference/server/extension-client.md @@ -118,10 +118,12 @@ public class ListOptions { `FieldSelector` 支持比自动生成的 APIs 中更多的查询条件,可以通过 `run.halo.app.extension.index.query.QueryFactory` 来构建。 ```java -FieldSelector.of(QueryFactory.and( - QueryFactory.equal("name", "test"), - QueryFactory.equal("age", 18) -)) +ListOptions.builder() + .fieldQuery(QueryFactory.and( + QueryFactory.equal("name", "test"), + QueryFactory.equal("age", 18) + )) + .build(); ``` 支持的查询条件如下: @@ -166,9 +168,27 @@ Query query = and( or(equal("dept", "A"), equal("dept", "B")), or(equal("age", "19"), equal("age", "18")) ); -FieldSelector.of(query); +ListOptions.builder() + .fieldQuery(query) + .build(); ``` +### 构建 ListOptions + +ListOptions 提供了 `builder` 方法用于构建查询条件,`fieldQuery` 方法用于传递字段查询条件,`labelSelector` 方法用于传递标签查询条件。 + +```java +ListOptions.builder() + .labelSelector() + .eq("key-1", "value-1") + .end() + .fieldQuery(QueryFactory.equal("key-2", "value-2")) + .build(); +``` + +- `labelSelector` 之后使用 `end` 方法结束标签查询条件的构建。 +- `andQuery` 和 `orQuery` 用于组合多个 `FieldSelector` 查询条件。 + ### 排序 `listBy` 和 `listAll` 方法都支持传递 `Sort` 参数,用于传递排序条件。