我似乎无法找到使用Postgresql数据库创建新Rails 3.1应用程序的最新指南。我非常感谢通过这个过程的指南。
答案 0 :(得分:69)
自Rails 3以来,该框架完全与数据库无关。
这意味着,你所要做的就是两件事:
pg
gem:gem 'pg'
database.yml
文件正在使用postgresql
作为适配器。您可以通过附加--database=postgresql
标记
rails new myapp --database=postgresql
但是,如果您已经创建了该应用,那么只需在您的Gemfile中注释gem 'sqlite3'
,添加gem 'pg'
,运行bundle
,然后更改您的database.yml
文件使用正确的适配器。
当然,不用说你也需要安装PostgreSQL本身,但这是你可以在google上轻松找到的东西。
答案 1 :(得分:23)
详细说明砖人的答案......跑完后:
$ rails new myapp --database=postgresql
这是您的database.yml的样子:
development:
adapter: postgresql
encoding: unicode
database: myapp_development
pool: 5
username: myapp
password:
test:
adapter: postgresql
encoding: unicode
database: myapp_test
pool: 5
username: myapp
password:
production:
adapter: postgresql
encoding: unicode
database: myapp_production
pool: 5
username: myapp
password:
运行:
$ bundle exec rake db:create:all
如果安装了PostgreSQL,将为您创建数据库。安装PostgreSQL的最简单方法是http://postgresapp.com/
答案 2 :(得分:0)
我发现您必须将上述示例中的用户名 - myapp添加到PostgreSQL数据库或将用户名更改为现有用户。
答案 3 :(得分:0)
从Rails 4开始,bricker的答案不起作用,至少不适合我。
这个命令改为:
rails new new_app --d = postgres