Rails nouvelle application =>
Le fichier database.yml actuel est comme ça =>
# SQLite version 3.x
# gem install sqlite3
#
# Ensure the SQLite 3 gem is defined in your Gemfile
# gem 'sqlite3'
development:
adapter: sqlite3
database: db/development.sqlite3
pool: 5
timeout: 5000
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
adapter: sqlite3
database: db/test.sqlite3
pool: 5
timeout: 5000
production:
adapter: sqlite3
database: db/production.sqlite3
pool: 5
timeout: 5000
J'ai besoin de modifier cela pour la base de données postgresql.
Comment puis-je faire ceci ?
Simplement:
development:
adapter: postgresql
encoding: unicode
database: blog_development
pool: 5
username: blog
password:
Host: localhost
development:
adapter: postgresql
encoding: utf8
database: name
username: hading
password: my_db_password
pool: 5 # not mandatory
timeout: 5000 # not mandatory
Host: localhost
port: your postgresql port number (5432 or 5433)
Comme l'a dit Zabba,
development:
adapter: postgresql
encoding: unicode
database: blog_development
pool: 5
username: blog
password:
Comme mentionné dans le Configuration de Rails Applications . Mais vous voudrez peut-être un min_messages: WARNING
, pour se débarrasser de les messages NOTICE désagréables que postgresql vous donne lors d'une migration . Alors mon database.yml
l'entrée ressemble à ceci
development:
adapter: postgresql
encoding: unicode
database: blog_development
pool: 5
username: blog
password:
min_messages: WARNING
Vous pourriez être intéressé par la génération d'une nouvelle application avec postgres par défaut:
Rails new myapp --database=postgresql
comme mentionné ici: https://devcenter.heroku.com/articles/getting-started-with-Rails4
development:
adapter: postgresql
encoding: utf8
database: name
username: hading
password: my_db_password
Host: localhost # not mandatory
pool: 5 # not mandatory
timeout: 5000 # not mandatory
Utilisez simplement
Rails new app_name --database=postgresql
ou si une application existante essaie
development:
adapter: postgresql
encoding: unicode
database: app_dev
pool: 5
username: username
password: password
Host: localhost