3

Unicorn と Nginx で Apartment gem を使用しています。サブドメイン エレベーターを使用しています。私initializers/apartment/subdomain_exclusionsが持っているApartment::Elevators::Subdomain.excluded_subdomains = ['www']

私の理解では、パブリック スキーマは、パブリック サブドメイン、www サブドメイン、またはサブドメインなし、つまり mydomain.com とともに使用する必要があります。

ただし、この方法では機能しません。www またはサブドメインを使用しない場合、最後にアクセスしたスキーマが使用されます。したがって、別のサブドメインを使用していた場合は、そのスキーマが使用されます。これは良くない。私も追加しようとしましconfig.default_schema = "public"たが、これは何もしません。

これが機能しない理由はありますか?サブドメインが指定されていない場合、誰かが同様の方法でセットアップし、パブリックスキーマのみが使用されますか? おそらくNginxの設定ですか?

4

2 に答える 2

0

Genericそれはエレベーターでの実装方法によるものだと思います。一致するデータベースが見つからない場合、スキーマをデフォルトに切り替えません。

https://github.com/influitive/apartment/blob/development/lib/apartment/elevators/generic.rb#L21

それがバグなのか、意図的に行われたのかはわかりません。Subdomainエレベーターをサブクラス化し、呼び出しメソッドを上書きすることをお勧めします。

于 2016-05-09T14:12:26.213 に答える