使用Postgresql数据库创建Rails 3.1应用程序(OSX Lion)

时间:2011-10-12 14:12:45

标签: ruby-on-rails ruby-on-rails-3 postgresql

我似乎无法找到使用Postgresql数据库创建新Rails 3.1应用程序的最新指南。我非常感谢通过这个过程的指南。

4 个答案:

答案 0 :(得分:69)

自Rails 3以来,该框架完全与数据库无关。

这意味着,你所要做的就是两件事:

  1. 在您的Gemfile中加入pg gem:gem 'pg'
  2. 确保您的database.yml文件正在使用postgresql作为适配器。
  3. 您可以通过附加--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