Ваши параметры @monday и @friday неверны, они должны иметь тип "отметка времени без часового пояса", но создаются как целые числа, см. Сообщение об ошибке. SQLite не имеет типов данных datetime, поэтому даты хранятся в виде текста или целых чисел (unix-timestamps). Вот почему вы не получаете сообщение об ошибке в SQLite.
Убедитесь, что вы создали временные метки, например «2004-10-19 10:23:54», и все будет в порядке. Другим вариантом может быть функция PostgreSQL to_timestamp () для преобразования вашей метки времени unix в метку времени:
@sent_emails = ContactEmail.all(:conditions => ['date_sent >= to_timestamp(?) and date_sent <= to_timestamp(?)', @monday, @friday])