ОШИБКА: оператор не существует: отметка времени без часового пояса> целое число) - PullRequest
0 голосов
/ 08 мая 2019

Я использую Rails 5.2 и передаю параметр даты.Чтобы упростить мой пример, посмотрите на приведенный ниже SQL-запрос, он похож, но упрощен, поскольку он слишком сложен для использования с методами активной записи, поэтому мне нужно запустить raw sql ..

sql = 'Select * FROM mytable WHERE created_at > #{@start_date_time}'

1) Как санировать параметры, когда я передаю их в строку или команду execute.

2) В каком формате должна быть моя дата?Я пробовал '2018-01-01 00: 00: 00.000' и '2018-01-01' и обе ошибки.

КОД:

sql =count_query(@start_date_time, sender_type, sender_id)
records_array = ActiveRecord::Base.connection.execute(sql)

ОШИБКА

ActiveRecord::StatementInvalid (PG::UndefinedFunction: 
ERROR:  operator does not exist: timestamp without time zone > integer)

LINE 11: WHERE created_at > 2018-01-01

1 Ответ

0 голосов
/ 08 мая 2019

ГДЕ созданный_ат> '2018-01-01' должен работать

...