#ruby-on-rails #controller #before-filter
#ruby-on-rails #контроллер #before-filter
Вопрос:
В app/controllers/application_controller
class ApplicationController < ActionController::Base
before_filter :set_locale_or_redirect
before_action :set_locale
Этот код выполняется во всех контроллерах. Тем не менее, я не хочу set_locale_or_redirect
и set_locale
выполнять, app/controllers/biblio_controller.rb
я попробовал это:
class Dts::BibliosController < ApplicationController
skip_before_filter :set_locale_or_redirect, raise: false
skip_before_action :set_locale, raise: false
безуспешно.
Комментарии:
1. Не используйте
before_filter
, это устарело, всегда используйтеbefore_action
.
Ответ №1:
Это определенно возможно. Чтобы «пропустить» before_action в контроллере, вы можете использовать:
skip_before_action :action_name
В вашем случае это было бы:
skip_before_action :set_locale_or_redirect
skip_before_action :set_locale
Вы можете прочитать больше здесь