【问题标题】:Calling helper method from Rails 3 controller从 Rails 3 控制器调用辅助方法
【发布时间】:2012-02-13 02:23:23
【问题描述】:

是否可以从控制器调用辅助方法?如果是,如何在 Rails 3 中执行此操作?

【问题讨论】:

标签: ruby-on-rails-3 controller helpers


【解决方案1】:
 view_context.some_helper_method

【讨论】:

    【解决方案2】:

    您可以在控制器中包含 helper 模块,也可以将 helper 定义为控制器方法并通过 helper_method :method_name 将其标记为 helper。

    class FooHelper
      def bar ... end
    end
    
    class QuxsController
      include FooHelper
    end
    

    class QuxsController
      private
      def bar ... end
      helper_method :bar
    end
    

    【讨论】:

      【解决方案3】:

      如果有人想在其他控制器中使用 ApplicationHelper 方法或查看只需在下面添加 include ApplicationHelper 给出,这是有效的,因为您的所有控制器都派生自 ApplicationController。

      class ApplicationController < ActionController::Base
        protect_from_forgery       
        include ApplicationHelper  
      end
      

      【讨论】:

        猜你喜欢
        • 2010-10-02
        • 2011-02-19
        • 2011-08-03
        • 1970-01-01
        • 2011-01-24
        • 2011-03-27
        • 2010-09-14
        • 1970-01-01
        相关资源
        最近更新 更多