我现在正在使用Rails 4.2。
我在lib目录下创建了一个模块。我想从app/controllers/applicaiont_controller.rb
调用维护方法,但它失败了:
NoMethodError in ProductsController#index
undefined method `redirect_to` for #<...>
我的lib模块如:
module One
class Display
response = other_method
if response.status == 200
data = 'OK'
else
redirect_to_maintencance 'Maintenance ...'
end
data
end
end
应用程序/控制器/ applicaiont_controller.rb
class ApplicationController < ActionController::Base
# Other methods
def redirect_to_maintencance(message = nil)
redirect_to :maintencance, flash: { maintencance_message: message }
end
end
答案 0 :(得分:0)
在lib模块中使用重定向方法不是一个好方法。 将状态检查逻辑移动到控制器或帮助程序。
感谢@ jphager2。