2010-01-10 6 views
1

Je viens de passer en mac, je travaillais auparavant sur Linux. J'essaie d'utiliser posgresql pour mon projetPostgresql ne fonctionne pas avec ruby ​​sur rails sur mac os x

Lorsque je démarre le serveur, cela fonctionne très bien.

Cependant quand j'utilise rake: db: migrate, il ne dit: S'il vous plaît installer l'adaptateur postgresql: gem install activerecord-postgresql-adapter (pas de fichier à charger - pg)

J'ai la pierre précieuse "pg" installé et il n'y a pas de gem comme activerecord-postgresql-adaptateur.

Je trouve bizarre que quand je ne ./script/server cela fonctionne, mais pas quand je fais rake: db: migrate

Thnaks

Répondre

1

Vérifiez que vous avez toujours installé vos gemmes en tant que root. Si vous avez pg installé dans ~/.gems/ruby ​​/ 1.8/gems (ou similaire), vous pouvez rencontrer ce (ou un problème similaire).

(Informations complémentaires pour la réponse d'Andrew, à peu près.)

+0

Je pense que c'était en fait une gemme d'enregistrement active qui a été installée dans mon répertoire utilisateur local et non en tant que root. Merci beaucoup. – Arthur

1

pg est le joyau activerecord-postgresql-adaptateur, donc c'est ce qu'il ne parvient pas à trouver.

Puisqu'il échoue seulement de migrer, il pourrait être rake commence à partir d'une version différente de ruby ​​que la console ou le script - avez-vous plusieurs versions de ruby?

En outre, comme il échoue dans rake, j'obtiendrais la sortie verbose (-v) afin que vous puissiez voir la trace de la pile, et voir mieux ce qui se passe, et à quel point il essaie d'obtenir pg mais ne avoir la gemme disponible. J'ai vu un peu de bizarrerie avec le chargement du râteau dans un ordre différent du démarrage des rails, donc ce n'est pas impossible.

Il y a un plugin récent qui professe pour aider les migrations pg dans les rails, pourrait aider: http://github.com/alex3t/rails_on_pg

Dans le cas où je pense ci-dessus est complètement inutile, voici quelques autres endroits à regarder:

projet pg page pour: https://rubyforge.org/projects/ruby-pg/

pour plus postgres sur rails de support: http://wiki.rubyonrails.org/database-support/postgres

Robby Russell écrire plus de Postgres que tout autre rails blogueur je lis: http://www.robbyonrails.com/articles/tag/postgresql

+0

Plus je pense à cela, je parie que vous avez installé rails/ruby ​​à partir des ports, mais pas rake, et donc avoir différentes versions de ces exécutables dans des répertoires différents. Essayez ceci, et voir si elles sont toutes dans le même répertoire: quel gem ruby ​​rake En outre, ce type a obtenu pour travailler en utilisant le post de robby sur RoR et postgres, sur os x: http://joshkim.org/2009/02/15/postgresql-ruby-and-rails-win/ –

1

Vous devrez peut-être installer un ou plusieurs des éléments suivants

  • pkg postgresql
  • pkg postgresql-devel
  • gem pg
0

Je viens de rencontrer dans ce sous Linux. Dans mon cas, les permissions étaient erronées: /usr/lib/ruby/gems/1.8/gems/pg-0.9.0 a été mis à 700.

Questions connexes