працює консоль Rails у виробництві


105

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

User.first.name='whatever' щоб змінити ім’я користувача.

Як виконати те саме завдання на живому сайті у режимі виробництва?

Відповіді:


182

якщо у вас рейки 3.0 або більше, ви також можете використовувати

rails console production

виробництво, звичайно, може бути замінено developmentабо test(значення developmentза замовчуванням)

Якщо додати цю опцію, --sandboxви зможете змінити будь-які зміни, внесені до вашої бази даних в консолі, після виходу

Якщо це не працює для вас, можливо, вам доведеться спробувати

bundle exec rails console production

Якщо ви насправді намагаєтеся запустити консоль рейки на виробничому сервері, спробуйте googling "запустити консоль rails [ваш хмарний хостинг-провайдер]", наприклад, "run 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 безпосередньо на сервері, або якщо ви хочете запустити консоль у контексті веб-програми.


1
... особливо так у Rails 4.
IAmNaN

6

Примітка. Ця відповідь передбачає, що ви використовуєте Heroku як службу хостингу.

Це залежить від того, який хостинг-сервіс ви використовуєте. Для Heroku ви можете зайти до свого терміналу і набрати

heroku run rails console

Це завантажить консоль рейки для вашого виробничого сайту та дозволить створювати записи для вашого веб-сайту.

Ви також можете вивчити посів бази даних, але це, як правило, призначене для тестування. У RailsCasts є кілька відео на цю тему, але вони трохи застаріли.



-1

сьогодні з рейками 6 бігають у консолі RAILS_ENV=production rails console

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.