我创建了一个ruby gem,其中包含一些视图和函数。让我们称之为示例gem。
我有一个ruby on rails项目,名为Produn。对于Produn内部的一些视图,我将如下渲染:
= render 'templates/content/ed/email'
该文件的完整路径是app/views/template/content/ed/email.html.haml.
我可以在Produn中渲染示例gem的视图吗?如何?感谢您的回复。
当然可以,为此您需要使用Rails引擎
1) 在lib/gem_name目录中创建名为engine.rb的文件
module MyGem
class Engine < Rails::Engine; end
end
2) 需要lib/gem_name.rb 中的引擎
require 'gem_name/engine'
3) 之后,您可以从您的gem的app/views目录中呈现模板/部分
= render 'templates/content/ed/email'
需要gem中的rails引擎为我工作,您可以检查我的gem server_side_validation
使用它,我认为这对您有帮助。
render :partial => 'my_gem/my_partial'