Rails:从插件中渲染部分内容

我尝试从插件中渲染部分后,我得到了一个丢失的模板错误。 我已经包含以下文件:

%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 =>然后它出现了一个帮助器错误。

问题是如何能够:我的插件中的views文件夹中的:render:partial =>

对于插件视图,您通常只需将它们复制到app/views目录,或者插件安装程序为您复制。 视图不能像$LOAD_PATH在模型和控制器上工作。

在Rails 2.3。*中,您的vendor / plugins / XXXX / app / views /目录自动包含在加载路径中。 因此,当给出以下插件结构时:

供应商/插件/ your_plugin /应用/视图/共享/ _box.html.erb

 Yuppie! 

您可以从例如app/views/site/index.html.rb调用此部分,如下所示:

 <%= render 'shared/box' %>