在ViewControllers

时间:2015-06-17 04:29:40

标签: ruby ruby-on-rails-4 method-overriding

在rails应用程序中,帮助程序如何包含在viewcontrollers中,包含的顺序是什么(首先包括哪个帮助程序,第二个,等等)?

此外,所有助手都可以查看吗?如果是这样,包含顺序是否与视图的相应控制器相同?

1 个答案:

答案 0 :(得分:2)

任何控制器都可以有相应的帮助器。

例如,如果您有一个名为Question(questions_controller.rb)的控制器,它可以有一个名为questions_helper.rb的帮助器。问题助手只能访问与问题控制器对应的视图。

此外,您将拥有一个应用程序帮助程序(application_helper.rb),可供应用程序中的所有视图访问。

默认情况下,所有帮助程序都不可用于视图。但是你可以在这样的帮手中加入其他助手:

module MyHelper
  include QuestionsHelper
end

您还可以在控制器内使用帮助器,如:

class MyController < ApplicationController
  include MyHelper

  def my_method
    ...
  end
end