web-dev-qa-db-ja.com

Thymeleaf-ブール演算子

Thymeleafを使用してandorなどのブール演算子を使用するにはどうすればよいですか?

たとえば、条件の1つだけが真である場合に、テーブルのデータを表示したい場合です。

<tr th:if="firstCondition or secondCondition">
  <td th:text="${entity.attr1}"</td>
  <td th:text="${entity.attr2}">Default Value</td>
</tr>
11
Vinicin

ブール演算子はそのように機能します。通常のJava命名法の代わりに、「または」、「および」を使用します。ifを短くすることもできます。

あなたはこれを試すことができます:

<tr th:if="${violation.remainingDebt != 0 or violation.validity}">

テストされている論理 'または'操作を考慮してそれらが分離されている場合は、それらを同じ中括弧内にネストする必要があります。

ただし、注意してください。これは、ifがtrueとして渡された場合にのみ、trとその子要素を表示します。

16
Nimchip

条件演算子を使用する代わりに&&および|| JavaおよびJavascriptで使用するような式では、Thymeleafでは比較のためにテキストANDおよびORを使用します。

OR条件の例:

<div th:if="${fruit.name} == Apple OR ${fruit.name} == Orange ">
     <!-- fruit's name is either Apple or Orange -->
</div>

AND条件の例:

<div th:if="${user.role} == 'ADMIN' AND ${user.property} == 'SPECIAL' ">
     <!-- User is admin and has SPECIAL previleges -->
</div>
12
Lucky