我剛剛與我的第一個Rails站點一起生活,但現在我遇到了問題。當我在我的IDE運行在開發模式的項目,我可以運行控制檯類似:在生產中運行Rails控制檯
User.first.name='whatever'
更改用戶名。
我如何做到在生產模式下的實時站點相同的任務?
我剛剛與我的第一個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