Railsy sprawdzające parametry wyszukiwania

Mam interfejs API, który jest dość spokojny, ale staram się wypracować czystą metodę wyszukiwania. Chcę móc wyszukiwać wszystkie rekordy między dwiema datami, a daty mogą być oddalone maksymalnie o 6 godzin. W tej chwili w mojej metodzie kontrolera mam następujące:

required_params = [:start_time, :end_time]
if check_required_params(required_params, params) and check_max_time_bound(params, 6.hours)
   ... rest of controller code here ...
end

check_required_params to metoda aplikacji, która wygląda tak:

def check_required_params(required_params, params_sent)
required_params.each do |param|
  unless has_param(param, params_sent)
    unprocessable_entity
    return false
  end
end
  true
end

check_max_time jest dość podobny.

Wiem, że sprawdzanie poprawności w kontrolerze jest niezgodne z najlepszymi praktykami, ale nie widzę, w jaki sposób mogę go dodać do modelu.

questionAnswers(3)

yourAnswerToTheQuestion