从Rails Gem获取新视图的正确方法是什么?
问题描述:
如果我想创建一个将方法添加到Rails视图的新rails rails,那么执行此操作的正确方法是什么?是否扩展ActionView :: Base?它会以某种方式涉及ApplicationHelper吗?从Rails Gem获取新视图的正确方法是什么?
答
许多宝石作者创建了一个模块来定义他们的视图帮助器方法,然后将它们包含在ActionView::Base
中。
module MyGem
module ActionViewExtensions
module MyHelpers
def my_view_helper
# ...
end
end
end
end
# You can do this here or in a Railtie
ActionView::Base.send :include, MyGem::ActionViewExtensions::MyHelpers
Railtie方法:
https://github.com/mynameisrufus/sorted/blob/master/lib/sorted/railtie.rb
备选: