Я хотел бы выполнить поиск в БД, используя входящий запрос remote_ip
, прежде чем будет применен какой-либо метод контроллера, чтобы установить конкретный атрибут класса контроллера.Однако, если поиск не удается (если ни один объект не связан с IP-адресом запроса), я хотел бы немедленно вернуть ответ 404
.
Например:
class Controller < ApplicationController
before_action :set_instance_or_404
def index
# do something with @instance
end
private
def set_instance_or_404
@instance = Model.find_by(ip_address: request.remote_ip)
# or if no instance is found, immediately return a 404 without hitting "index" method (or any other method for that matter)
end
end
Любая помощь будетс благодарностью!