我认为这是一个简单易行的问题!
我正在使用.env
文件来保存我的所有环境变量,而我正在使用foreman
。
不幸的是,在运行rails console rails c
时没有加载这些环境变量,因此,我现在正在运行控制台后手动加载它们,这不是最好的方法。
我想知道是否有更好的方法。
答案 0 :(得分:64)
大约一年前,"运行"命令已添加到foreman
参考:https://github.com/ddollar/foreman/pull/121
您可以按照以下方式使用它:
foreman run rails console
或
foreman run rake db:migrate
答案 1 :(得分:2)
rails不知道.env文件中指定的环境变量,因为它特定于foreman。您需要在调用rails console之前显式设置环境。看看this question。
答案 2 :(得分:0)
我个人在开发和测试环境中使用dotenv。使用这种方法,您不必为命令添加前缀,只需在config/application.rb
中调用初始值设定项:
Bundler.require(*Rails.groups)
Dotenv::Railtie.load
HOSTNAME = ENV['HOSTNAME']