Rails: как остановить рельсы при попытке загрузить postgres - PullRequest
0 голосов
/ 15 января 2012

Я хочу использовать sqlite3, но pg для производства на героку. Тем не менее, у меня не установлено postgres на локальном хосте, поэтому установка пакета не работает, когда я запускаю код ниже

Я знаю, что могу добавить кое-что к приведенному ниже коду, чтобы rails не пытался установить его при запуске bundle install, но я не знаю, что это такое. Кто-нибудь может сказать мне?

#gem 'sqlite3'
group :development, :test do
  gem 'sqlite3'
end
group :production do
  gem 'pg'
end

1 Ответ

2 голосов
/ 15 января 2012

По умолчанию, упаковщик устанавливает все определенные группы.Вы должны четко указать, какие группы вы не хотите.В этом случае это, вероятно, будет

bundle install --without production

. Bundler запомнит ваш выбор групп в .bundle/config.Следовательно, вам не следует проверять содержимое этого каталога в системе управления версиями.

Однако следует помнить, что существуют различные различия в диалекте SQL SQLite и Postgres.Так что, если вы не делаете только тривиальные вещи, вам обязательно стоит попробовать и на Postgres.Такие вещи, как обработка дат, чисел и различий различных типов строк, в Postgres, как правило, намного строже.SQLite отображает большинство типов данных в строки бесконечной длины.Postgres использует фиксированные типы данных, которые применяются принудительно.

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