在 Rails.application 初始化器中导入模块
Posted
技术标签:
【中文标题】在 Rails.application 初始化器中导入模块【英文标题】:Import module in Rails.application initializer 【发布时间】:2021-09-17 23:25:21 【问题描述】:如何从我的config/initializer
之一的lib/module
中定义的方法中受益?
lib/my_module
----
module MyModule
def custom_method
12
end
end
这样我就可以按如下方式使用了
config/initializer/random_initializer
----
# following imports do not seem to work
# include MyModule
# require 'my_module'
Rails.application.configure do
config.blabla = custom_method
end
【问题讨论】:
【参考方案1】:你可以使用module_function
# lib/my_module
module MyModule
def x
0
end
module_function :x
end
# config/initializer/random_initializer
require "my_module"
Rails.application.configure do |config|
config.blabla = MyModule.x
end
【讨论】:
以上是关于在 Rails.application 初始化器中导入模块的主要内容,如果未能解决你的问题,请参考以下文章
ruby Rails.application.routes.recognize_path