запуск консоли Rails в продакшене

105

Я только что запустил свой первый сайт на Rails, но теперь у меня проблема. Когда я запускаю проект в режиме разработки в своей среде IDE, я могу запустить консоль примерно так:

User.first.name='whatever' для изменения имени пользователя.

Как выполнить ту же задачу на действующем сайте в рабочем режиме?

nFinIt_loop
источник

Ответы:

182

если вы используете rails 3.0 или выше, вы также можете использовать

rails console production

Производство, конечно, можно заменить на developmentили test(значение developmentпо умолчанию)

Добавление опции --sandboxделает так, что любые изменения, которые вы вносите в свою базу данных в консоли, будут отменены после выхода

Если это не работает для вас, возможно, вам нужно попробовать

bundle exec rails console production

Если вы действительно пытаетесь запустить консоль rails на своем производственном сервере, попробуйте поискать в Google «запустить консоль rails [ваш провайдер облачного хостинга]», например, «запустить rails console heroku».

Начиная с Rails 6 вам нужно использовать

RAILS_ENV=production bundle exec rails c

или

RAILS_ENV=production rails c

в зависимости от вашей настройки

Питер Берг
источник
53

Очень легко:

RAILS_ENV=production rails console
валун
источник
23

Если вы уже развернули свой сайт на сервере, вы также можете использовать:

bundle exec rails console production

... в корневом каталоге вашего приложения rails. Это если вы еще не установили пакет rails непосредственно на сервере или если вы хотите запустить консоль в контексте своего веб-приложения.

RNickMcCandless
источник
1
... особенно в Rails 4.
IAmNaN 02
6

Примечание. В этом ответе предполагается, что вы используете Heroku в качестве службы хостинга.

Это зависит от того, какой хостинг вы используете. Для Heroku вы можете зайти в свой терминал и ввести

heroku run rails console

Это загрузит консоль rails для вашего производственного сайта и позволит вам создавать записи для вашего действующего сайта.

Вы также можете изучить заполнение базы данных, но это обычно предназначено для тестирования. У RailsCasts есть несколько видео по этой теме, но они немного устарели.

jason328
источник
6

Попробуйте команду ниже.

  rails c -e production
Пратап
источник
-1

сегодня с рельсами 6 запустить в консоли RAILS_ENV=production rails console

daniel0318
источник