Je cours Rails 4.2.5 app sur ma machine locale (OS X El Capitan). Il fonctionnait bien en mode développement.My rails 4.2.5 serveur de l'application continue de se connecter à la production db au lieu de développement db en mode développement
Mais j'ai alors décidé de voir comment cela fonctionnait en mode production, donc en production et en fonctionnement du serveur.
bundle install --deployment --without development test
bundle exec rake db:create RAILS_ENV=production
bundle exec rake db:migrate RAILS_ENV=production
bundle exec rake db:seed RAILS_ENV=production
bundle exec rake assets:precompile RAILS_ENV=production
bundle exec rails s -e production
Tout n'était pas beau. J'ai donc fait quelques changements jusqu'à ce que tout fonctionne correctement. Après cela, j'avais besoin d'ajouter quelques fonctionnalités implémentées, donc je suis revenu en mode de développement et j'ai lancé le serveur.
bundle install
bundle exec rake db:migrate
bundle exec rake db:seed
bundle exec rails s
Le fonctionnement du serveur sans problème, mais je trouve qu'il travaillait avec la production db au lieu de développement db.
J'ai essayé d'effacer tous les caches en exécutant bundle exec rake tmp:cache:clear
mais cela n'a pas aidé.
Pour votre information, j'utilise postgres pour la production et le développement.
Voici le fichier database.yml
:
default: &default
adapter: postgresql
encoding: unicode
pool: 30
development:
<<: *default
username: <%= ENV['OATV_POSTGRES_USERNAME'] %>
password: <%= ENV['OATV_POSTGRES_PASSWORD'] %>
database: <%= ENV['OATV_POSTGRES_DATABASE_DEVELOPMENT'] %>
test:
<<: *default
username: <%= ENV['OATV_POSTGRES_USERNAME'] %>
password: <%= ENV['OATV_POSTGRES_PASSWORD'] %>
database: <%= ENV['OATV_POSTGRES_DATABASE_TEST'] %>
production:
<<: *default
url: <%= ENV['DATABASE_URL'] %>
Bien sûr, je mets tous les env vars sur ma machine locale depuis que je dois tester dans le développement, le test et le mode de production.
Quelle est la cause possible ici?
Merci pour toute réponse à l'avance.
avez-vous tué le précédent serveur de production daemon? – sixty4bit
@ sixty4bit Je suis désolé. J'ai mal saisi le texte. En fait, je n'ai pas exécuté le serveur de production en tant que démon. Modifié la question en conséquence. – artificis
Vérifiez si RAILS_ENV est exporté dans votre environnement. Peut-être que vous l'avez fait par commodité? –