2010-05-16 3 views
2

Je commence à apprendre Ruby on Rails. Donc ma demande, comme toutes les applications Rails, dispose de trois bases de données:Commutation des bases de données Ruby on Rails

  • Développement
  • test
  • production

Et la question est: comment basculer d'un i db à un autre?

Merci

Répondre

3

Par défaut chaque fois que vous ne script « ruby ​​/ serveur » vous allez être en cours d'exécution contre la base de données de développement.

Chaque fois que vous exécutez des tests, en faisant "rake test", "rake test: fonctionnels", etc., Rails charge automatiquement tout ce que vous avez dans vos appareils dans la base de données de test. Chaque fois que vous déployez en production, si vous utilisez Phusion Passenger (ce que vous devriez probablement faire), il lancera par défaut votre application en mode production.

Si vous voulez démarrer votre serveur webrick contre l'une des autres bases de données, vous pouvez faire:

> ruby script/server -e production 
> ruby script/server -e test 
+0

'$ rails serveur -e production' sera utilisé en production – zulucoda

1

Il est fait en réglant la variable d'environnement RAILS_ENV:

"RAILS_ENV" => "production" 

La plupart des scripts prennent également un paramètre -e qui vous permet de spécifier l'environnement. Par exemple, lorsque vous démarrez le serveur Web:

ruby script/server -e production 
+0

Pourquoi est-ce été vers le bas-voté? S'il vous plaît laissez un commentaire lors du vote à la baisse. –