Как написать скрипт ruby, который использует производственную среду вместо разработки? - PullRequest
1 голос
/ 16 ноября 2011

Я написал сценарий ruby, который требует config/environment.rb, чтобы я мог использовать в скрипте все модели моего приложения rails, но проблема в том, что я хочу использовать среду production вместо среды develoment, которая похоже на поведение по умолчанию.

Я использую Rails 3.1.1 и Ruby 1.9.2

Как запустить скрипт в среде production?

Ответы [ 3 ]

2 голосов
/ 16 ноября 2011

Ваш скрипт примет переменную окружения RAILS_ENV в качестве среды для использования.

Я бы очень осторожно переопределил это в скрипте, так как это может вызвать большую путаницу, если вы попытаетесь запустить свой скрипт в другомокружение - например, постановка - и оно начинает пытаться получить доступ к производственным базам данных и т. д.

Так же:

RAILS_ENV=production ./script/my-awesome-script

или

export RAILS_ENV=production
./script/my-awesome-script

Вообще говоря;когда я захожу в рабочую среду Rails, я сразу же изменяю среду, если я не настроил ее по умолчанию как «производственную».

1 голос
/ 16 ноября 2011

Я думаю, вы хотите либо Rails.env = 'production', либо ENV['RAILS_ENV'] = 'production' в вашем скрипте.

0 голосов
/ 16 ноября 2011

@ davidb, я не уверен, что то, что вы хотите, тоже не так хорошо на рельсах, но, возможно, вы можете использовать seed.rb (то есть начальную функциональность) для достижения того, что вы хотите, если этот скрипт запускается только один раз или иногда как мы можем указать среду при запуске seed

rake db: seed RAILS_ENV = производство

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...