2013-08-02 15 views
9

Come utilizzare gli operatori booleani come and o or utilizzando Thymeleaf?Thymeleaf - operatori booleani

Ad esempio, se voglio mostrare i dati da una tabella se solo una delle condizioni è vera.

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

'$ {entity.attr1} o $ {} entity.attr2'. Lo stesso con 'and'. –

+0

Ho bisogno di qualcosa del genere: . Ma solo la seconda condizione funziona. – Vinicin

+0

Entrambe le condizioni funzionano isolate – Vinicin

risposta

14

Gli operatori booleani funzionano proprio così. Si usa 'o', 'e' al posto della normale nomenclatura java. Puoi anche accorciare i tuoi se.

Potete provare questo:

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

devi nido loro negli stessi parentesi graffe, indipendentemente se sono isolati considerando la 'oppure' operazione logica in fase di test.

Attenzione! Questo mostrerà solo il tr ed è elementi figlio se il if passa come true.

8

Invece di usare operatori Conditonal && e || di espressione, come si usa in Java e Javascript, in Thymeleaf usiamo il testo AND e OR per il confronto.

OR condizione esempio:

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

AND condizione esempio:

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