2

skip_before_filter当使用块定义 before_filter 时,是否可以跳过使用前过滤器。例如:

class ApplicationController < ActionController::Base
  before_filter do |controller|
    # filter stuff
  end
end

我知道,可以使用“正常”的方式来定义带有方法名称的过滤器。

4

2 回答 2

3

实际上,我使用带有方法的 if 选项找到了解决此问题的方法。利用

class ApplicationController < ActionController::Base
  before_filter(:if => :use_filter?) do |controller|
    # filter stuff
  end

  private

  def use_filter?
    true
  end
end

class OtherController < ApplicationController
  private

  def use_filter?
    false
  end
end

:D

于 2014-09-17T18:03:39.840 回答
2

它绝对不可能。从文档中:

请注意,跳过使用 Ruby 相等性,因此无法使用 #skip_filter 跳过使用匿名 proc 定义的回调

http://apidock.com/rails/AbstractController/Callbacks/ClassMethods/skip_action_callback

于 2014-09-12T23:18:16.360 回答