我正在创建一个Rack Middleware,我想在我的Rails App中使用它。基本上,我需要将与特定网址匹配的请求记录到我的数据库中。为了做到这一点,我需要将数据库配置传递给我的中间件,以便它可以与DB建立连接。我想做的是: -
<class:Application>': undefined method
但这是错误的
config / application.rb:40:in {{1}} read&#39; #(NoMethodError)
如果我添加byebug并在byebug控制台中运行它,它可以正常工作。我无法找出原因。我想做以下事情: -
答案 0 :(得分:1)
您应该使用:
db_yml = Rails.root.join('config/database.yml')
db_config = YAML.load(File.open(db_yml))[Rails.env]
Rails.root.join('config/database.yml')
返回文件路径,即字符串。