RAILS_ENV在哪里?

sta*_*lei 1 ruby-on-rails

我正在看这篇关于rake命令的文章,但是不知道RAILS_ENV在哪里.那是在特定文件中的某个地方吗?

db:create Creates the database for the current RAILS_ENV environment. If RAILS_ENV is not specified it defaults to the development and test databases.
Run Code Online (Sandbox Code Playgroud)

max*_*max 6

RAILS_ENV 只是一个环境变量,它在shell或操作系统本身中设置(或在调用过程时).

环境变量是一组动态命名值,可以影响运行进程在计算机上的行为方式.
它们是进程运行的环境的一部分.例如,正在运行的进程可以查询TEMP环境变量的值以发现存储临时文件的合适位置,或者查找HOMEUSERPROFILE变量以查找运行该进程的用户所拥有的目录结构.
https://en.wikipedia.org/wiki/Environment_variable

ENV["RAILS_ENV"]只包含一个字符串,如"生产","开发"或"测试".这告诉Rails 该配置文件中的/config/environments负载-和散列键在database.yml使用数据库.

例如,如果ENV["RAILS_ENV"] == "foo"Rails将:

  • 加载 /config/environments/foo.rb
  • foo在database.yml中查找密钥.
  • Rails.env.foo? 将是真的.

因此,Rails环境概念与通用计算概念略有不同--Rails环境是一组设置和数据库的更广泛术语,用于不同目的,如自动化测试或生产.

也可以看看: