1

Heroku の pgsql データベースに 2 つのスキーマ (public を除く) が必要です。ローカルでは、データをパブリックスキーマにインポートして、名前を自分の選択した名前に変更するようにしました。同様の方法で、1 つの DB の下に 2 つのスキーマを作成し、それを Rails アプリケーションに接続しました。

search_schema_path: 'schema1, schema2'

今、私はherokuで同じことをしたいので、同じ手順を試しました。しかし、Rails は DB からテーブルを見つけることができないようです。エラー関係 "delayed_jobs" が存在しません。それを行う方法を教えてください。

助けてくれてありがとう。

4

1 に答える 1

2

Rails アプリが Heroku にデプロイされると、自動的に生成された がdatabase.ymlapplicationsを上書きします。これにより、設定database.ymlが削除され、 にリセットされます。schema_search_pathpublic

ロード後に値をリセットする初期化子を追加できます。たとえば、config/initializers/postgres_schema.rb次のとおりです。

ActiveRecord::Base.connection.schema_search_path = 'schema1, schema2'

再接続または再設定する場所では、これを慎重に設定する必要があります。

于 2013-12-19T20:57:57.333 に答える