Сравнение дат Logi c / в жидкостном фильтре - PullRequest
1 голос
/ 09 января 2020

Я пытаюсь добавить 30 дней к дате предварительного заказа, и если сегодняшняя дата наступает позже, отобразить текстовую строку, а если нет, другую текстовую строку. Есть идеи, где я иду не так?

{% assign assign pre_date = 259200 | plus: order.created_at | date: '%s' %}
{% assign today_date = 'now' | date: '%s' %}
{% if pre_date > today_date %}
disply this
{% else %}
this
{% endif %}

1 Ответ

0 голосов
/ 11 января 2020

Фильтр date возвращает строку, даже если вы используете %s для получения количества секунд, поэтому Shopify может столкнуться с ситуациями, когда вы сравниваете числа, похожие на строки, а не фактические числа

Чтобы привести ваши переменные в их правильные числовые значения c, я считаю, что самое простое, что нужно сделать - применить нейтральную математическую операцию (| plus: 0 или | times: 1)

* 1008. * Таким образом, ваш окончательный код может выглядеть примерно так:
{% assign pre_date = order.created_at | date: '%s' | plus: 259200 %}
{% assign today_date = 'now' | date: '%s' | times: 1 %}

{% if pre_date > today_date %}
  Pre-date is greater
{% else %}
  Today is the day
{% endif %}
...