我正在構建一個以ActiveAdmin作爲主管理界面的多租戶應用程序。我已經使用acts_as_tenant gem很好地完成了單獨的數據分離。ActiveAdmin中的多租戶,多管理員用戶
我已經使用AdminUser模型作爲所有用戶的用戶模型對象。
爲了添加其他用戶,AdminUser也被限定在租戶的範圍內。
這是擺脫登錄,因爲當ActiveAdmin /設計嘗試認證,我想這是第一次打,如下圖所示的find_tenant過濾器:
class ApplicationController
set_current_tenant_through_filter
before_filter :find_tenant
def find_tenant
if admin_user_signed_in?
set_current_tenant(Company.find(current_admin_user.company_id))
end
end
不知道如何解決這個問題?我希望用戶登錄,然後應用程序從登錄用戶處獲取company_id,並設置租戶,並通過該租戶對ActiveAdmin上顯示的所有數據進行作用域限制(如果可以通過登錄,此部分可以通過acts_as_tenant gem運行良好) 。
感謝