Rails проверяет уникальность по диапазонам дат и времен - PullRequest
0 голосов
/ 23 сентября 2019

У меня есть приложение, которое включает в себя создание продвижения недвижимости.И у меня есть следующие атрибуты в моей таблице базы данных: -

 create_table :property_promotions do |t|

  t.string :title
  t.date :start_date
  t.date :end_date
  t.time :start_time
  t.time :end_time

  t.timestamps null: false
end

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

пытался выполнить запросы ниже, но не смогло создать уникальные записи с датой и временем.

PropertyPromotion.where("(DATEDIFF(start_date, ?) * DATEDIFF(?, end_date)) >= 0 AND (TIMEDIFF(start_time, ?) * TIMEDIFF(?, end_time)) > 0", end_date, start_date, end_time, start_time)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...