在生产中运行Rails控制台
我刚刚与我的第一个Rails站点一起生活,但现在我遇到了问题。当我在我的IDE运行在开发模式的项目,我可以运行控制台类似:在生产中运行Rails控制台
User.first.name='whatever'
更改用户名。
我如何做到在生产模式下的实时站点相同的任务?
注:这个答案假定您使用Heroku的为您的主机服务。
这取决于你使用的托管服务。对于Heroku的,你可以去你的终端类型
heroku run rails console
这将加载铁轨控制台为您的生产现场,并允许您为您的生活网站上创建的记录。
您也可以看看seeding a database但通常是指进行测试。 RailsCasts有关于该主题的一些视频,但它们有点过时。
很简单:
RAILS_ENV=production rails console
注意'rail console production'也可以在rails 3.0或更高版本中工作 – 2013-06-05 17:58:36
如果你像我一样懒惰,你也可以键入'rails c production'。 – 2013-06-05 18:07:59
如果你正在运行轨道3.0或更高版本,你也可以使用
rails console production
生产当然可以用被取代development
或test
(价值development
通过默认情况下)
添加选项--sandbox
使得它让你对数据库在C的任何变化onsole将回滚退出
后,如果这不是为你工作,你可能需要尝试
bundle exec rails console production
如果你实际上是试图运行您的生产服务器上的铁轨控制台,尝试使用Google “跑道控制台[你的云托管服务提供商]”例如“运行轨道控制台的Heroku”
哇......不知何故,我从来不知道这一点。我一直认为它非常复杂 – Tallboy 2013-11-12 03:28:14
请注意,您可以'rails c'而不是'rails console'。(并且'rails s'代替'rails server') – 2014-05-13 19:19:18
值得补充说可能需要'bundle exec' – DazBaldwin 2014-07-15 15:53:52
如果你已经部署了你的网站服务器上,你也可以使用:
bundle exec rails console production
...在你的Rails应用程序的根目录。也就是说,如果您尚未在服务器上直接安装rails包,或者如果您想在Web应用程序的上下文中运行控制台。
......尤其是在Rails 4中。 – IAmNaN 2013-10-02 03:21:46
请尝试下面的命令。
rails c -e production
-e不是必需的或者是无效的,请参阅其他下面的答案 – 2016-11-12 14:38:07
“软件包/ EXEC轨C”命令的工作太
确保您在控制台乱搞之前备份你的数据库 - 在生产 – house9 2013-03-01 00:11:54
时或运行与如果指定了--sandbox选项控制台你不想保存你的更改 – 2013-06-05 18:00:30