Üretimde Rails konsolunu çalıştırma


105

İlk Rails sitemle yeni yayına girdim, ancak şimdi bir sorunum var. Projeyi IDE'mde geliştirme modunda çalıştırdığımda konsolu aşağıdaki gibi çalıştırabilirim:

User.first.name='whatever' bir kullanıcı adını değiştirmek için.

Aynı görevi canlı bir sitede üretim modunda nasıl gerçekleştirebilirim?

Yanıtlar:


182

rails 3.0 veya üstünü çalıştırıyorsanız, şunu da kullanabilirsiniz:

rails console production

üretim elbette developmentveya ile değiştirilebilir test( developmentvarsayılan olarak değerdir )

Seçeneğin eklenmesi, --sandboxkonsolda veritabanınızda yaptığınız tüm değişikliklerin siz çıktıktan sonra geri alınmasını sağlar.

Bu sizin için işe yaramazsa, denemeniz gerekebilir

bundle exec rails console production

Aslında üretim sunucunuzda raylar konsolunu çalıştırmaya çalışıyorsanız, "run rails console [bulut barındırma sağlayıcınız]" ör. "Run rails console heroku" Google'da arama yapmayı deneyin

Rails 6'dan itibaren kullanmanız gerekir

RAILS_ENV=production bundle exec rails c

veya

RAILS_ENV=production rails c

kurulumunuza bağlı olarak



23

Sitenizi sunucuya zaten dağıttıysanız, şunları da kullanabilirsiniz:

bundle exec rails console production

... raylar uygulamanızın webroot'unda. Bu, ray paketini henüz doğrudan sunucuya yüklemediyseniz veya web uygulamanızın bağlamında konsolu çalıştırmak istiyorsanız.


1
... özellikle Rails 4'te
böyledir

6

Not: Bu yanıt, Heroku'yu barındırma hizmeti olarak kullandığınızı varsayar.

Hangi barındırma hizmetini kullandığınıza bağlıdır. Heroku için terminalinize gidip yazabilirsiniz

heroku run rails console

Bu, üretim siteniz için raylar konsolunu yükleyecek ve canlı siteniz için kayıtlar oluşturmanıza olanak sağlayacaktır.

Ayrıca bir veritabanını tohumlamaya da bakabilirsiniz, ancak bu genellikle test etmek içindir. RailsCasts'in konuyla ilgili bazı videoları var ama bunlar biraz modası geçmiş.


6

Aşağıdaki komutu deneyin.

  rails c -e production

-1

bugün 6 konsolda çalışan raylarla RAILS_ENV=production rails console

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.