尝试从插件渲染部分后,我收到了一个模板错误。我已经包含了以下文件:
%w{ models controllers helpers views }.each do |dir|
path = File.join(File.dirname(__FILE__), 'app', dir)
$LOAD_PATH << path
ActiveSupport::Dependencies.load_paths << path
ActiveSupport::Dependencies.load_once_paths.delete(path)
end
模型正在加载,但至于其他事情,我不确定发生了什么。帮助器也没有被加载,因为我只是从插件中复制了partial的内容而不是render:partial =&gt;然后它出现了一个助手错误。
问题是如何能够:render:partial =&gt;来自我的插件中的views文件夹
答案 0 :(得分:1)
对于插件视图,您通常只需将它们复制到app/views
目录,或者插件安装程序为您复制。视图不能像$LOAD_PATH
那样在模型和控制器上工作。
答案 1 :(得分:0)
在Rails 2.3。*中,您的vendor / plugins / XXXX / app / views /目录自动包含在加载路径中。因此,当给出以下插件结构时:
供应商/插件/ your_plugin /应用/视图/共享/ _box.html.erb
Yuppie!
您可以从app/views/site/index.html.rb
这样调用此部分:
<%= render 'shared/box' %>