Параметризованная веточка - PullRequest
0 голосов
/ 18 февраля 2020

Мне нужно, как проверить, находится ли пользовательская дата внутри диапазона.

Проблема в том, что API возвращает календарь, но год и месяц отправляются отдельно, и я не могу создать дату с twig.

Эта часть кода, кажется, возвращает мои переменные, как и ожидалось

<script>console.log("Year"+{{CurrYear| json_encode()| raw}});</script>
<script>console.log("Month: "+{{CurrMonth| json_encode()| raw}});</script>

, в то время как я могу получить день в пределах l oop

<script>console.log("Day: "+{{key| json_encode()| raw}});</script>

Я пытаюсь создать элемент данных, чтобы я мог использовать нативные сравнения. Я знаю, что могу разделить другую дату и сравнить ее одну за другой, но я пытаюсь избежать этого

<script>console.log({{ annoForm."-".mesForm."-".key |date('Y-m-d')}}) ;</script>

Поэтому я могу использовать ее потом как

{% set auxDate = annoForm."-".mesForm."-".key |date('Y-m-d') %}

НО, Я не могу создать правильную дату здесь, чтобы я мог использовать ее в:

{% datestart < auxDate  and dateend > auxDate  %}
  {# condition met #}
{% endif %}

1 Ответ

0 голосов
/ 19 февраля 2020

Основной проблемой здесь было правильное объединение строки при создании экземпляра date ():

{% set auxDate = ("#{annoForm}-#{mesForm}-#{key} " | date('Y-m-d') ) %}

Я хочу добавить пару проблем, которые я обнаружил, работая над этим. Во-первых, важно использовать дату ('Ym-d') вместо "date ()", потому что она будет учитывать июль до июня (в порядке алфавита c порядок).

Учитывать пустые или открытые поля ( в моем случае дата начала обязательна)

{% if  datestart < auxDate and ( dateend is null or dateend > auxDate ) %} 

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...