2008-10-30 3 views
2

Je dois me connecter à une base de données héritée qui a un schéma appelé "Financeiro". configurer mon database.yml à:Est-ce que schema_search_path dans database.yml pour l'application Postgre Rails ignore la casse?

... 
schema_search_path: Financeiro 
... 

quand activerecord essaie de trouver quelque chose que je reçois l'erreur suivante:

ActiveRecord::StatementInvalid: RuntimeError: ERROR  C3F000 Mschema "financeiro" does not exist F.\src\backend\catalog\namespace.c  L2898 Rassign_search_path: SET search_path TO Financeiro from 
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/connection_adapters/abstract_adapter.rb:147:in `log' 

Notez que dans le message d'erreur que je reçois financeiro (downcase). Si je renommer le schéma en financeiro downcase cela fonctionne bien. Mais ce n'est pas possible dans l'environnement de production. Merci.

Répondre

0

essayez "Financeiro" avec les citations. Si cela le fait dans le SQL, cela devrait fonctionner. En général, la norme SQL exige que les identificateurs soient insensibles à la casse, sauf s'ils sont cités. Vous devrez peut-être faire un devis spécial pour obtenir les guillemets à partir du fichier yml au SQL réel. Je ne connais pas Rails/Ruby du tout.

Questions connexes