2010-07-27 8 views
15

Possible en double:
How to handle Ruby on Rails error: “Please install the postgresql adapter: `gem install activerecord-postgresql-adapter'”S'il vous plaît installer l'adaptateur postgresql: `gem install activerecord-postgresql-adapter`

Je suis en train de se Redmine travailler avec Postgres.

Dans mes journaux, je continue à voir. Après avoir cherché sur Google, vous avez dit que vous aviez besoin d'installer gem pg. Mais quand je fais la liste gem

actionmailer (2.3.5) 
actionpack (2.3.5) 
activerecord (2.3.8, 2.3.5) 
activeresource (2.3.5) 
activesupport (2.3.8, 2.3.5) 
fastthread (1.0.7) 
passenger (2.2.15) 
pg (0.9.0) 
postgres (0.7.9.2008.01.28) 
postgres-pr (0.6.3) 
rack (1.0.1) 
rails (2.3.5) 
rake (0.8.7) 

Vous pouvez voir clairement que pg est déjà installé. Est-ce que quelqu'un d'autre a trouvé ce problème ou l'a corrigé?

Répondre

27

assurez-vous que votre db-adaptateur database.yml est réglé sur "postgresql". Si encore vous avez le même problème, essayez d'utiliser l'adaptateur pur-ruby:

 
gem install postgres-pr 

(assurez-vous de désinstaller le joyau p avant ... pour éviter les conflits)

Si cela fonctionne, il est un problème avec la gem postgres. Quoi qu'il en soit, à des fins de développement, l'utilisation de la gemme pure-ruby est généralement acceptable.

0

Je n'ai jamais travaillé avec la gem postgre sql, mais j'ai déjà résolu une erreur similaire en l'ajoutant dans config/preinitializer.rb.

require 'rubygems' 
require 'rubygems/gem_runner' 

ENV['GEM_PATH'] = '/home/[username]/ruby/gems:/usr/lib/ruby/gems/1.8' 
Gem.clear_paths 

Remarque: vous devrez utiliser vos propres emplacements de gemmes. Habituellement, vous pouvez les trouver en exécutant gem environment.

Vous pouvez également trouver des réponses utiles ici:
How to handle Ruby on Rails error: "Please install the postgresql adapter: `gem install activerecord-postgresql-adapter'"

+0

Maintenant, j'obtiens /opt/redmine/apps/redmine/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_specification.rb:76:in 'establish_connection ': Veuillez installer le postgresql adaptateur: 'gem install activerordord-postgresql-adapter' (/usr/lib/ruby/gems/1.8/gems/pg-0.9.0/lib/pg_ext.so: classe ELF erronée: ELFCLASS64 - /usr/lib/ruby/gems/1.8/gems/pg-0.9.0/lib/pg_ext.so) (RuntimeError) – silent1mezzo

+0

Ce n'est plus lié à ruby, quelque chose ne va pas dans votre bibliothèque postgre native. En particulier, avez-vous téléchargé la bonne version (32/64 bits)? En outre, il semble y avoir beaucoup de contenu connexe dans google pour "mauvaise classe ELF: ELFCLASS64" –

+2

Postgres ou PostgreSQL - pas postgre – rfusca

5

J'ai eu plus de chance avec la pierre précieuse rubis pg

gem install ruby-pg

J'ai essayé plusieurs de les postgres les autres pierres précieuses, 'pg' , 'postgres-pr' sans chance Mon environnement était Ubuntu 10.4, ruby ​​entreprise 1.8.7

ruby-pg résolu le problème ci-dessus pour moi

3

pour debian le presser est:

aptitude install libdbd-pg-ruby 
+0

fonctionne pour Wheezy aussi – Keith

2

erreurs similaires (presque identiques) peuvent se produire dans Rails 3.0.4 avec Postgres et pg, lorsque vous le nom d'une faute de frappe adaptateur dans votre base de données.YML, par exemple "postrgesql" au lieu de "postgresql":

S'il vous plaît installer l'adaptateur postrgesql: gem install activerecord-postrgesql-adapter (pas de fichier à charger - active_record/connection_adapters/postrgesql_adapter)

1
gem install postgres-pr 

a travaillé pour moi sur Windows 7 avec Rails 2.3.4

+0

Sachez simplement qu'il est un mauvais artiste. Vous ne devriez probablement pas l'utiliser pour la production. –