Создание приложения Rails 3.1 с базой данных Postgresql (OSX Lion) - PullRequest
28 голосов
/ 12 октября 2011

Кажется, я не могу найти актуальное руководство по созданию нового приложения Rails 3.1 с базой данных Postgresql.Я был бы очень признателен за руководство по этому процессу.

Ответы [ 4 ]

69 голосов
/ 12 октября 2011

Начиная с Rails 3, инфраструктура полностью независима от базы данных.

Что это значит, все, что вам нужно сделать, это 2 вещи:

  1. Включить гем pgв вашем Gemfile: gem 'pg'
  2. Убедитесь, что ваш database.yml файл использует postgresql в качестве адаптера.

Это можно сделать автоматически при создании нового приложения с помощьюдобавив флаг --database=postgresql:

rails new myapp --database=postgresql

Но если вы уже создали приложение, просто закомментируйте gem 'sqlite3' в своем Gemfile, добавьте gem 'pg', запустите bundle, а затемизмените файл database.yml, чтобы использовать правильный адаптер.

Конечно, само собой разумеется, что вам также потребуется установить сам PostgreSQL, но это то, что вы легко можете найти в Google.

23 голосов
/ 08 июля 2012

Чтобы уточнить ответ брикера ... После запуска:

$ 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/

0 голосов
/ 11 ноября 2013

Начиная с Rails 4, ответ bricker не работает, по крайней мере, для меня.

Эта команда вместо этого выполняет:

 rails new new_app --d = postgres
0 голосов
/ 13 июня 2013

Я обнаружил, что вы должны либо добавить имя пользователя, в приведенном выше примере - myapp, в базу данных PostgreSQL, либо изменить имя пользователя на существующего пользователя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...