2011-10-07 66 views
42

軌新的應用程序=>Ruby on Rails:我如何編輯postgresql的database.yml?

目前的database.yml就是這樣=>

# 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 

我需要修改這個對PostgreSQL數據庫。

我該怎麼做?

回答

93

簡單:

development: 
    adapter: postgresql 
    encoding: unicode 
    database: blog_development 
    pool: 5 
    username: blog 
    password: 
    host: localhost 

來源:Configuring Rails Applications

+2

+1源.. –

6

正如Zabba說這是

development: 
    adapter: postgresql 
    encoding: unicode 
    database: blog_development 
    pool: 5 
    username: blog 
    password: 

正如Configuring Rails Applications提及。但你可能需要額外的min_messages: WARNING,以擺脫the nasty NOTICE messages postgresql gives you during a migration。所以我database.yml入口看起來像這樣

development: 
    adapter: postgresql 
    encoding: unicode 
    database: blog_development 
    pool: 5 
    username: blog 
    password: 
    min_messages: WARNING 
2
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 
13
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) 
2

只需使用

rails new app_name --database=postgresql 

,或者如果現有的應用程序嘗試

development: 
    adapter: postgresql 
    encoding: unicode 
    database: app_dev 
    pool: 5 
    username: username 
    password: password 
    host: localhost