本番環境でRailsコンソールを実行する


105

最初のRailsサイトを公開したばかりですが、問題が発生しています。IDEでプロジェクトを開発モードで実行すると、コンソールを次のように実行できます。

User.first.name='whatever' ユーザー名を変更します。

プロダクションモードのライブサイトで同じタスクを実行するにはどうすればよいですか?

回答:


182

Rails 3.0以上を実行している場合は、

rails console production

生産はもちろんdevelopmentor で置き換えることができますtest(値はdevelopmentデフォルトです)

オプション--sandboxを追加すると、コンソールでデータベースに加えた変更は、終了後にロールバックされます

これでうまくいかない場合は、

bundle exec rails console production

実際に本番サーバーでrails consoleを実行しようとしている場合は、「ru​​n rails console [ご利用のクラウドホスティングプロバイダー]」をググリングしてみてください。例:「run rails console heroku」

Rails 6以降では、使用する必要があります

RAILS_ENV=production bundle exec rails c

または

RAILS_ENV=production rails c

セットアップに応じて



23

サイトをサーバーに既に展開している場合は、次のものも使用できます。

bundle exec rails console production

...あなたのrailsアプリのwebrootに。これは、まだRailsパッケージをサーバーに直接インストールしていない場合、またはWebアプリのコンテキスト内でコンソールを実行する場合です。


1
...特にそうRailsの4中
IAmNaN

6

注:この回答は、ホスティングサービスとしてHerokuを使用していることを前提としています。

使用しているホスティングサービスによって異なります。Herokuの場合、ターミナルに移動して次のように入力できます

heroku run rails console

これにより、本番サイトのRailsコンソールが読み込まれ、ライブサイトのレコードを作成できるようになります。

データベースのシードを検討することもできますが、これは通常、テスト用です。RailsCastsにはこのトピックに関するいくつかのビデオがありますが、少し古くなっています。



-1

今日はレール6がコンソールで実行されています RAILS_ENV=production rails console

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.