2011-10-07 54 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