2011-10-07 30 views
42

ray mới ứng dụng =>Ruby on Rails: Làm thế nào tôi có thể chỉnh sửa database.yml cho postgresql?

Các database.yml hiện nay là như thế =>

# 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 

tôi cần phải chỉnh sửa này cho cơ sở dữ liệu postgresql.

Tôi làm cách nào để thực hiện việc này?

Trả lời

93

Đơn giản chỉ cần:

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

Nguồn: Configuring Rails Applications

+2

+1 cho nguồn .. –

6

Như Zabba nói đó là

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

Như đã đề cập trong Configuring Rails Applications. Nhưng bạn có thể muốn có thêm min_messages: WARNING, để loại bỏ the nasty NOTICE messages postgresql gives you during a migration. Vì vậy database.yml entry của tôi trông như thế này

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

Đơn giản chỉ cần sử dụng

rails new app_name --database=postgresql 

hoặc nếu ứng dụng hiện thử

development: 
    adapter: postgresql 
    encoding: unicode 
    database: app_dev 
    pool: 5 
    username: username 
    password: password 
    host: localhost 
Các vấn đề liên quan