Как исключить ресурсы с прошедшей датой в ТВ?
Добрый день!
Подскажите пожалуйста, как можно исключить из вывода сниппетом pdoResources ресурсы, у которых в ТВ (тип ввода «Дата») указана прошедшая дата и время? Дата в базе данных хранится в формате: «2015-12-11 16:55:00».
Подскажите пожалуйста, как можно исключить из вывода сниппетом pdoResources ресурсы, у которых в ТВ (тип ввода «Дата») указана прошедшая дата и время? Дата в базе данных хранится в формате: «2015-12-11 16:55:00».
Комментарии: 9
Нужно добавить параметры в вызов pdoResources
А если включить &showLog=`1`, то можно увидеть какой формируется запрос.
...
&includeTVs=`myTvDate`
&where=`[myTvDate > now()]`
// или так, если не работает первый вариант where
&where=`[TVmytvdate.value > now()]`
myTvDate — название вашей TV.А если включить &showLog=`1`, то можно увидеть какой формируется запрос.
Без кавычек это будет неправильный JSON. Надо так:
["myTvDate > now()"]
или
["TVmytvdate.value > now()"]
Обрати внимание, он же пишет, где можно проверить правильность JSON.
Проверяем, и понимаем, что тёзка опечатался.
Проверяем, и понимаем, что тёзка опечатался.
["myTvDate > now()"]
сработало, но…… немного не так, как я планировал. Да, ресурсы с прошедшей датой не выводятся, но так же не выводятся ресурсы, у которых дата не указана, а они нужны.
Прошу прощения за назойливость, но в &where-запросах вообще ничего не понимаю. Где про них можно почитать?
Попробуй так:
["myTvDate > now() OR myTvDate IS NULL"]
Благодарю, Василий, заработало, как надо! И вам, Сергей, спасибо! Теперь буду разбираться, как вообще работает &where.
Прошу прощения за назойливость, но в &where-запросах вообще ничего не понимаю. Где про них можно почитать?В документации по SQL. Например, тут.
Еще раз — спасибо!
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.