带架构的ActiveAdmin(多租户应用)

时间:2014-06-14 09:49:47

标签: postgresql ruby-on-rails-4 activeadmin

我在我的多租户应用上安装了ActiveAdmin(使用带有Apartment gem的模式)。 帐户位于默认的“公共”架构中,附加用户位于子域模式中。

登录ActiveAdmin时,我使用'public'模式,因此我可以访问Account表,但User表为空,因为'public'模式中没有用户。

有没有办法一次列出所有架构中的所有用户?或者作为替代方案,在ActiveAdmin中使用下拉菜单过滤器来选择一个特定的架构/子域,然后列出该架构/子域的所有用户?

这是我的ApplicationController,可以让我们了解应用程序如何处理多模式表。

感谢您的任何想法:)

class ApplicationController < ActionController::Base
  protect_from_forgery with: :exception

  before_filter :load_schema, :authenticate_user!
private
  def load_schema
   Apartment::Database.switch('public')
   return unless request.subdomain.present?

   if current_account
     Apartment::Database.switch(current_account.subdomain)
   else
     redirect_to root_url(subdomain: false)
   end
 end
 def current_account
   @current_account ||= Account.find_by(subdomain: request.subdomain)
 end
  helper_method :current_account

0 个答案:

没有答案