Использование Rails 4.2.1 и Active Admin 1.0.0.pre2
У меня есть квартира, у которой много Занятий. Я хочу, чтобы администраторы могли видеть, совпадает ли квартира в индексе с датами, переданными в качестве параметров. У меня есть метод для квартиры
def available_during(start_date, end_date)
return !self.occupancies.any? { |occ| occ.date_range_overlap(Date.parse(start_date), Date.parse(end_date)) }
end
Возвращает true, если в квартире есть занятие, которое перекрывается с двумя датами. Метод date_range_overlap
при заполнении довольно понятен. Я не могу понять, как сделать DSL ActiveAdmin для фильтрации этим методом или даже сделать форму для ввода случайных параметров.
Мне удалось разместить столбец, который показывает логическое возвращаемое значение метода available_during в индексе.
if params[:from] && params[:until]
column "available?" do |apt|
apt.available_during(params[:from], params[:until])
end
end
Но мне кажется, что я могу заставить это работать, вручную введя параметры from и до params в url.
Как разместить произвольную форму поиска, чтобы отправить пользователю нужные параметры? Или еще лучше сделать фильтр на той боковой панели, которая использует этот метод?