Логическое назначение в freemarker с использованием условных операторов

В freemarker вы можете присвоить логическое значение следующим образом:

[#if something = value]
    [#assign bool = true]
[/#if]

Затем использовать в условном выражении, например:

[#if bool]
    ...do something
[/#if]

Пока что мне не удалось сделать это в этом формате, но я подумал, что могу что-то упустить. Нужно ли объявлять переменную вне первого оператора if, чтобы она оставалась в области видимости и использовалась позже?

1 ответ

Решение

Вы не включили сообщение об ошибке... но я думаю, что ваша проблема в том, что если первое условие ложно, то вы никогда не назначаете bool переменная, поэтому она вообще не будет существовать, и поэтому вы не можете использовать ее во втором выражении. Чтобы это исправить, первым #if может быть изменено на:

[#assign bool = something == value]
Другие вопросы по тегам