Thymeleaf "или" оператор в го: если - PullRequest
0 голосов
/ 24 апреля 2018

Мне интересно, какой правильный синтаксис для использования оператора Or в тимелист.

Я основываю свое решение на этом стековом посте:

Thymeleaf - логические операторы

Там, где в ответе с наибольшим количеством голосов используется "или".

Мой текущий код:

 th:if="${not #strings.startsWith(inbox?.status, 'P')}"

Проверяет, не начинается ли inbox.status с p, в этом случае будет отображаться текст, который работает нормально.

Теперь я хочу проверить, что статус входящих сообщений также не начинается с «Приложения», например:

th:if="${not #strings.startsWith(inbox?.status, 'P') or not #strings.startsWith(inbox.status, 'App')}"

Но это ничего не делает.

1 Ответ

0 голосов
/ 24 апреля 2018

Вы можете использовать OR или ||. В вашем случае, однако, именно логика вашего выражения неверна.

Status    A                 B                   !A || !B
          startsWith('P')   startsWith('App')   
Pending   true              false               true
App       false             true                true
Something false             false               true

Я бы лично написал это как (обратите внимание, что я использую th:unless вместо th:if):

th:unless="${#strings.startsWith(inbox?.status, 'P') OR #strings.startsWith(inbox?.status, 'App')}"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...