2016-03-28 5 views
1

私はアパートの宝石とMySQLをデータベースとして使って、レールにマルチテナントアプリケーションを作成しています。私はhttps://gorails.com/episodes/multitenancy-with-apartmentの後にセットアップアパートを持っています。Rails - Apartment - MySQLドロップテナントデータベース

これ以降、新しいサブドメインを作成するたびに、サブドメインごとに新しいデータベースが作成されました。 rake db:dropを実行すると、メインdbのみが削除され、すべてのサブドメインのデータベースは元のままです。

私の質問は、サブドメインデータベースを削除する方法です。

答えて

1

あなたが使用して、既存のテナント一覧表示することができるはずです。

Apartment.tenant_names 

をそして、あなたはしかし、私はアパートを使用してい

Apartment::Tenant.drop('tenant_name') 

https://github.com/influitive/apartment#dropping-tenants

を使用して1を削除することができるはずですPostreSQLでは、生成されたスキーマは実際に正しく削除されませんでした。手動で行う必要がありました。

ActiveRecord::Base.connection.execute "DROP SCHEMA IF EXISTS #{tenant} CASCADE;"