【发布时间】:2011-03-05 01:03:33
【问题描述】:
如何设置我希望所有控制器都可以访问的方法?
将方法粘贴在 application_helper 中只是使其可用于视图
【问题讨论】:
标签: ruby-on-rails
如何设置我希望所有控制器都可以访问的方法?
将方法粘贴在 application_helper 中只是使其可用于视图
【问题讨论】:
标签: ruby-on-rails
您可以将方法添加到ApplicationController。所有其他控制器子类ApplicationController,因此将能够调用该方法。
您需要创建 protected 方法,以便它只对子类可见,并且不能作为 Web 可访问的操作使用。
【讨论】:
您可以在您的控制器(或基础 ApplicationController)中使用include ApplicationHelper 以使辅助方法可用。
您还可以在 ApplicationController 中包含以下行以包含所有帮助程序:
helper :all
【讨论】:
粘贴到lib。助手是用来在视图中使用的;如果您有特定于应用程序的库(“库”是指您的应用程序使用的任何代码,以及“特定于应用程序”的任何不属于vendor 的代码),lib 是您可以去的地方。
【讨论】:
【讨论】:
在 rails 3 中,您可以使用:控制器中的 view_context 对象来访问视图辅助方法。例如,
class ApplicationController < ActionController::Base
def some_method
view_context.some_view_helper_method
end
end
module ApplicationHelper
def some_view_helper_method
end
end
看看这个: http://wowkhmer.com/2011/09/09/use-view-helper-methods-in-rails-3-controller/
【讨论】: