#ruby-on-rails #metaprogramming #before-filter
#ruby-on-rails #метапрограммирование #перед фильтром
Вопрос:
можно ли добавить некоторые перед фильтром с помощью метапрограммирования, то есть из какого-либо модуля, который расширяет мой контроллер? лучше всего было бы указать, после какого существующего он должен применяться, или просто добавить его в конце всех фильтров перед
Ответ №1:
Вы имеете в виду что-то вроде этого?
module SomeMixin
def self.included(clazz)
clazz.class_exec do
before_filter :filter_method
end
end
def filter_method
# some filter
end
end
Ответ №2:
приветствия, нашел очень похожее решение в то же время
def self.included(base)
base.send :before_filter, :some_authorize, :only => :destroy
end
protected
def some_authorize
authorize! :delete, @current_project
end