2010-01-23 4 views
0

rake db: créerImpossible de créer la base de données, méthode non définie `quote_ident '?

J'obtiens l'erreur suivante:

undefined method `quote_ident' for PGconn:Class 

Après avoir googlé une solution, il semble en ajoutant:

def PGconn.quote_ident(name) 
%("#{name}") 
end 

config/initializers/new_rails_defaults.rb devrait résoudre le problème, mais je reçois toujours l'erreur! Aucune suggestion? Merci

Voir erreur ici: http://github.com/mneumann/postgres-pr/issues/issue/1

Répondre

3

La solution est d'ajouter:

def PGconn.quote_ident(name) 
%("#{name}") 
end 

à active_record/connection_adapters/postgresql_adapter.rb

+0

Merci! m'a aidé à économiser mon temps. –

0

Je pense que c'est une incompatibilité de version. Etes-vous sûr de disposer des bonnes versions de tout ce qui est installé sur le site? Par exemple. Serveur Postgres, libpgsql (bibliothèque client Postgres), quelle que soit la bibliothèque d'accès à Postgres, et enfin votre application (rake)?

+0

Non, je ne suis pas sûr. Comment savoir si j'ai les "bonnes" versions? Voir ici: http://github.com/mneumann/postgres-pr/issues/issue/1 – RewbieNewbie

+0

L'approche générique passe par la documentation de tout ce qui se trouve sur la pile, et recherche les versions requises des éléments ci-dessous il. Ensuite, parcourez la documentation de chacune de ces choses requises, et cherchez la version de celles-ci, etc. Donc, dans votre cas, vous devriez parcourir la documentation de rake et chercher quelle version de Ruby, Ruby-Postgres module (je ne suis pas sûr du nom de ce que je ne suis pas une personne Ruby), quelle version de Postgres, etc, il exige, puis vérifiez si vous avez la bonne version de ceux-ci. Et si nécessaire, continuez à creuser plus profondément. –

+0

Oh, donc c'est un problème connu dans le logiciel! Je vois. Eh bien, je suis désolé, je ne peux pas aider, je ne connais pas assez Ruby. –

Questions connexes