如何从控制台运行控制器关注方法?

如何从控制台运行控制器关注方法?

问题描述:

如果我有一个控制器的关注,例如:如何从控制台运行控制器关注方法?

module MyConcern 

    def concern_method param 
    puts param.inspect 
    end 

end 

我如何测试从控制台的方法concern_method

,使用方法如下所述: How do I call controller/view methods from the console in Rails?我可以使用访问应用程序控制器:

controller = ActionController::Base::ApplicationController.new 

...但随后,这将引发一个错误:

controller.concern_method "hello world" 

NoMethodError: undefined method `concern_method` for #<ApplicationController:0x000001091fbad0> 

不会自动添加到关注控制器何时从控制台实例化?

您可以做到这一点:

controller = ActionController::Base::ApplicationController.new 
controller.extend(MyConcern) 

controller.concern_method "hello world"