@@ -185,41 +185,50 @@ https://github.com/Tencent/APIJSON/blob/master/APIJSONORM/src/main/java/apijson/
185185可以配置两条不同规则,用不同的 tag 对应使用不同的条件。 <br />
186186 <br />
187187method: DELETE <br />
188- 通过 id 删除 <br />
188+
189+ 通过 id 删除
189190```
190191tag: Comment-by-id // 当然写成 Comment:id 等其它任何不符合表名格式的名称都可
191192structure: ... "MUST":"id" ...
192193```
193194 <br />
194- 通过 date 条件删除 <br />
195+
196+ 通过 date 条件删除
195197```
196198tag: Comment-by-date
197199structure: ... "MUST":"date" ...
198200```
201+
199202 <br />
200- 如果想只配置一条规则,则 Operation 加上 AT_LEAST_ONE/ANY_ONE ,然后配置 <br />
203+ 如果想只配置一条规则,则 Operation 加上 AT_LEAST_ONE/ANY_ONE ,然后配置
204+
201205```
202206tag: Comment
203207structure: ... "AT_LEAST_ONE":"id,date" ... // 至少传其中一个
204208```
205- 或 <br />
209+
210+ 或
211+
206212```
207213tag: Comment
208214structure: ... "ANY_ONE":"id,date" ... // 必须传其中一个,不能同时传 2 个以上
209215```
210216 <br />
217+
211218AT_LEAST_ONE/ANY_ONE 其中一个也可以通过扩展 MUST 来实现(目前看这种方式更好) <br />
212219"MUST":"id | date,其它" 通过 | 或来表示其中任何一个,注意左右一定要各有一个空格,因为可能有 "name|$" "id|{}" 等包含 "|" 的 key <br />
213220https://github.com/Tencent/APIJSON/blob/master/APIJSONORM/src/main/java/apijson/orm/Operation.java
214221
215222 <br />
216223还可以设置更复杂的表达方式
224+
217225```
218226"MUST":"1:id | date,其它" // id, date 必须传其中一个,且不能多传 <br />
219227"MUST":">=2:id | momentId|{} | date>=,其它" // id, momentId|{}, date>= 必须至少其中 2 个
220228"MUST":"2+:id | momentId|{} | date>=,其它" // id, momentId|{}, date>= 必须至少其中 2 个,替代 >= 2,更方便解析,并且不用考虑 >1, != 2 等其它各种不等式
221229"MUST":"2-:id | momentId|{} | date>=,其它" // id, momentId|{}, date>= 最多传其中 2 个,替代 <= 2
222230```
231+
223232 <br />
224233这样的话就不用加 Operation 了,不过 AbstractVerifier 仍然要处理下 REFUSE 和 MUST 的互斥关系 <br />
225234https://github.com/Tencent/APIJSON/blob/master/APIJSONORM/src/main/java/apijson/orm/AbstractVerifier.java#L1012-L1042
0 commit comments