我正在写我的第一个 gem,我在初始化部分有一些问题。
所以我读到了 Railtie,我有点困惑,有一部分是关于初始化器和生成器的。
根据这个线程,他建议使用生成器 Rails 如何在 gem 中创建初始化程序
所以我不确定什么是最好的方法。
无论如何,我尝试做一些初始化程序,为 Jbuilder 添加一些方法
module MyGem
class Railtie < Rails::Railtie
initializer "my_gem.jbuilder_custom_cache" do |variable|
class JbuilderTemplate
def custom_cache!(resource, name, &block)
fragment_cache_key = ::MyGem::Logic.cache_key(name, resource)
options = { expires_in: 1.hour }
cache!(fragment_cache_key, options, &block)
end
end
end
end
end
这效果不好。