Rails的三种环境----开发环境,生产环境和测试环境

本文详细介绍了Rails应用预设的开发、测试和正式上线三种环境,并通过命令操作展示了如何在不同环境中使用Rails控制台、服务器和迁移命令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Rails 的三个环境

Rails 的应用程序预设提供了三种不同的执行模式: 

  • development environment 开发模式,用在你的开发的时候 
  • test environment 测试模式,用在执行测试程式时 
  • production environment 正式上线模式,用在实际的上线运作环境

Rails 控制台默认使用的是“开发环境”:

$ rails console
Loading development environment
>> Rails.env
=> "development"
>> Rails.env.development?
=> true
>> Rails.env.test?
=> false

如前所示,Rails 对象有一个 env 属性,属性上还可以调用各环境对应的布尔值方法,例如,Rails.env.test?,在“测试环境”中的返回值是 true,而在其他两个环境中的返回值则是 false

如果需要在其他环境中使用控制台(例如,在“测试环境”中进行调试),只需把环境名称传递给 console 命令即可:

$ rails console test
Loading test environment
>> Rails.env
=> "test"
>> Rails.env.test?
=> true

Rails 本地服务器和控制台一样,默认使用“开发环境”,不过也可以在其他环境中运行:

$ rails server --environment production

如果要在“生产环境”中运行应用程序,先要提供生产环境数据库。在“生产环境”中执行 rake db:migrate 命令可以生成“生产环境”所需的数据库:

$ bundle exec rake db:migrate RAILS_ENV=production

(我发现在控制台、服务器和迁移命令中指定其他环境的方法不一样,这可能会产生混淆,所以我特意演示了三个命令的用法。)

顺便说一下,把应用程序部署到 Heroku 后,可以使用如下的命令进入远端的控制台:

$ heroku run console
Ruby console for yourapp.herokuapp.com
>> Rails.env
=> "production"
>> Rails.env.production?
=> true

Heroku 是用来部署网站的平台,自然会在“生产环境”中运行应用程序。

转载于:https://www.cnblogs.com/tardis/p/4037882.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值