[英]How to configure a sinatra rack app to use figaro
我看到了这篇文章,并认为某些内容丢失或版本更改。 我有一个使用Figaro的非常简单的机架应用程序-由Heroku托管。 目前,我在本地计算机上。
我现在需要使用ENV
。
我的应用程序结构:
APP
|_ config/
|_ public/
|_ views/
|_ config.ru
|_ app.rb
|_ other-files
内部config / application.yml
SOME_KEY: some-value
内部config.ru
require './app.rb'
run MyApp.run!
这部分给出了错误。 内部app.rb:
require File.dirname(__FILE__) + '/config/application.yml'
[...]
此行与上面的链接相同。 我懂了
无法加载此类文件/config/application.yml
在app.rb
,我需要能够执行ENV['SOME_KEY']
您不能仅require
Yaml文件,因为它不是ruby。 Yaml是不是特定于ruby的文件结构。 Figaro也被编写为与Ruby on Rails一起使用,而不是Sinatra。 您可能会想出一种使其工作的方法,但它并不像加载yaml配置文件那样简单。
有关如何完成您要完成的工作的一些想法,请参阅这篇文章。 这是宝石的分叉版本,可能对您有用。
我之前在一个独立的应用程序中已完成此操作,如下所示:
Figaro.application = Figaro::Application.new(
environment: 'production',
path: File.expand_path("config/application.yml")
)
Figaro.load
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.