2013-08-19 5 views
0

Я пытаюсь использовать бесплатный хостинг, который использует геройку. Я попробовал много вариантов, и я все равно продолжаю получать эту ошибку «Пожалуйста, установите адаптер postgresql:` gem install ... »в журнале heroku.Heroku «Пожалуйста, установите адаптер postgresql»

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

Что мне нужно сделать, чтобы оно работало?

Вот мой Gemfile:

1 source 'https://rubygems.org' 
    2 
    3 gem 'rails', '3.2.14' 
    4 
    5 # Bundle edge Rails instead: 
    6 # gem 'rails', :git => 'git://github.com/rails/rails.git' 
    7 
    8 gem 'activerecord-postgresql-adapter' 
    9 gem 'typhoeus' 
10 
11 # Gems used only for assets and not required 
12 # in production environments by default. 
13 group :assets do 
14 gem 'sass-rails', '~> 3.2.3' 
15 gem 'coffee-rails', '~> 3.2.1' 
16 gem "twitter-bootstrap-rails" 
17 # See https://github.com/sstephenson/execjs#readme for more supported runtimes 
18 # gem 'therubyracer', :platforms => :ruby 
19 
20 gem 'uglifier', '>= 1.0.3' 
21 end 
22 
23 group :development do 
24 gem 'debugger' 
25 end 
26 
27 group :development, :test do 
28 gem 'capybara' 
29 gem 'rspec-rails', '~> 2.0' 
30 gem 'factory_girl' 
31 gem 'mysql2' 
32 end 
33 
34 group :test do 
35 gem 'vcr' 
36 end 
37 
38 group :production do 
39 gem 'pg' 
40 end 
41 
42 gem 'proxylocal' 
43 
44 gem 'devise' 
45 gem 'jquery-rails' 
46 gem 'turbolinks' 

и мой конфиг/database.yml файл:

1 # MySQL. Versions 4.1 and 5.0 are recommended. 
    2 # 
    3 # Install the MYSQL driver 
    4 # gem install mysql2 
    5 # 
    6 # Ensure the MySQL gem is defined in your Gemfile 
    7 # gem 'mysql2' 
    8 # 
    9 # And be sure to use new-style password hashing: 
10 # http://dev.mysql.com/doc/refman/5.0/en/old-client.html 
11 development: 
12 adapter: postgresql 
13 encoding: utf8 
14 reconnect: false 
15 database: resource-management_development 
16 pool: 5 
17 username: root 
18 password: 
19 socket: /tmp/mysql.sock 
20 
21 # Warning: The database defined as "test" will be erased and 
22 # re-generated from your development database when you run "rake". 
23 # Do not set this db to the same as development or production. 
24 test: &test 
25 adapter: postgresql 
26 encoding: utf8 
27 reconnect: false 
28 database: resource-management_test 
29 pool: 5 
30 username: root 
31 password: 
32 socket: /tmp/mysql.sock 
33 
34 production: 
35 adapter: postgresql 
36 encoding: utf8 
37 reconnect: false 
38 database: resource-management_production 
39 pool: 5 
40 username: root 
41 password: 
42 socket: /tmp/mysql.sock 
43 
44 cucumber: 
45 <<: *test 

Вот полная ошибка:

/app/vendor/bundle/ruby/2.0.0/gems/bundler-1.3.2/lib/bundler/rubygems_integration.rb:214:in `block in replace_gem': Please install the postgresql adapter: `gem install activerecord-postgresql-a 
dapter` (pg is not part of the bundle. Add it to Gemfile.) (LoadError) 

Может кто-нибудь получить его решить , так что я и множество людей могут развернуть на этой бог-забытой платформе героку?

PS: вы можете заметить, что в разработке есть «драгоценный камень» mysql2 », потому что я получил это от другого решения здесь. В любом случае, это не сработает.

+1

Я считаю, что вам нужно использовать 'gem 'pg'' вместо этого, который вы используете. – MurifoX

+2

Не указывать сокет mysql с конфигурацией postgresql. – Drew

ответ

0

В соответствии с этим: https://devcenter.heroku.com/articles/rails3 Вы должны использовать драгоценный камень pg. Так что, возможно, это проблема.

+0

, но он уже сделал в производственной группе ... – rony36

+0

@ rony36 О, не видел этого. – MurifoX

1

Вам не нужна группа производства в вашей базе данных.yml, если вы используете Heroku. Для того, чтобы получить базу данных для работы в производстве, вам нужно будет работать:

heroku run rake db:migrate 

Чтобы использовать эту функцию локально, проверить эту установку: https://devcenter.heroku.com/articles/heroku-postgresql#local-setup

Изменение вашего тестирования и разработки конфигурации, если вы используете MySQL, хотя, Я бы рекомендовал, чтобы все три среды использовали одну и ту же систему баз данных.

+0

Я нахожусь на бесплатной учетной записи, могу ли я сделать то, что вы сказали? –

+0

Я не использовал локальную статью установки лично, но шаги настройки, которые я дал, - это то, что работает для меня, и у меня есть бесплатная учетная запись. Например, rony36 заявил, что я также не думаю, что вам нужен адаптер адаптера activerecord. – Drew

0

Я не знаю, почему вы используете этот gem 'activerecord-postgresql-adapter' в 8-й строке gemfile. Вы пытались удалить эту строку?

Смежные вопросы