dfa*_*ang 4 ruby-on-rails helper include refinerycms
我正在研究炼油厂cms,试图向新闻等页面添加预览功能,我正在尝试将我自己的助手包含到控制器中,“包含”不起作用,但“助手”有效。
示例代码:
module Refinery
module News
module Admin
class PreviewController < ActionController::Base
#include LayoutHelper # not ok
helper LayoutHelper # Ok
end
end
end
end
Run Code Online (Sandbox Code Playgroud)
我已经阅读了 api,助手的工作方式类似于“需要和包含”,但我不知道这里的真正区别。
谢谢 !
helper LayoutHelper确实包含LayoutHelper,但它直接包含在模板类中。
同时include LayoutHelper,该模块包含在控制器类中。
您可以检查以下来源helper:
# File actionpack/lib/abstract_controller/helpers.rb, line 93
def helper(*args, &block)
modules_for_helpers(args).each do |mod|
add_template_helper(mod)
end
_helpers.module_eval(&block) if block_given?
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1855 次 |
| 最近记录: |