Sto costruendo un'app multi-tenant con ActiveAdmin come interfaccia di amministrazione principale. Ho usato la gemma act_as_tenant per ottenere dati separati.Multi Tenant, Multi Admin Users in ActiveAdmin
Ho utilizzato il modello AdminUser come oggetto modello utente per tutti gli utenti.
Per aggiungere altri utenti, AdminUser ha anche ambito per l'inquilino.
Questo sta gettando via il login, perché quando ActiveAdmin/Devise tenta di autenticare, suppongo che viene prima colpendo il filtro find_tenant come illustrato di seguito:
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
Non sei sicuro di come ottenere intorno a questo ... Voglio che l'utente effettui il login e quindi l'applicazione prende il company_id dall'utente loggato e imposta il titolare e tutti i dati mostrati su ActiveAdmin vengono esaminati tramite quel tenant (questa parte funziona bene attraverso la gemma act_as_tenant se riesco a superare il login) .
Grazie