Я пытаюсь использовать оператор Twig (версия 2.x) if / elseif / else для отображения некоторого текста, основанного на балансе ордера, но кажется, что Twig анализирует отрицательное целое число как положительное.
{% if (order.balance) > 0 %}
You have EUR {{ order.open_amount }} left to pay!
{% elseif (order.balance) < 0 %}
You have paid to much, the remainder will be deposited into your account.
{% else %}
You have paid, thank you.
{% endif %}
order.balance подается в Twig в виде целого числа и может быть отрицательным, 0 или положительным.
Однако фрагмент кода имеет следующий результат:
order.balance = 0 Ожидаемый: Вы заплатили, спасибо. Факт: Вы заплатили, спасибо.
order.balance = 29999 Ожидается: у вас осталось 299,99 евро для оплаты! Фактически: Вам осталось заплатить 299,99 евро!
order.balance = -10001 Ожидаемый: вы заплатили много, остаток будет зачислен на ваш счет. Фактически: Вам осталось заплатить -100,01 евро!
Логика c, которую я придерживаюсь, более или менее соответствует описанию в примере здесь: https://twig.symfony.com/doc/2.x/tags/if.html
Что мне здесь не хватает?