0

位于子域上的多租户应用程序向租户提供这些类型的 url:

subdomain.domain.com/:tenant-id/the-route-you-want

所有租户都有自己的 postgresql 模式。

使用 Active Storage 上传工作正常,并且填充了良好的架构,但是当您尝试获取文件时,url 不再引用租户 ID,因为 Active Storage 有自己的路由。

他们是一种确定这些路线范围的方法吗?

使用公寓 gem,我的实际工作是将租户 ID 传递给默认 URL:

class ApplicationController < ActionController::Base
  def default_url_options(options = {})
    { tenant: params[:tenant]}
  end
end

并调整 Apartment 初始化器:

tenant = req.params['tenant'] || req.path.split('/')[1]

他们是一种在良好范围内制作 Active Storage URL 的方法吗?就像是:

scope path: ":tenant" do
  mount-active-storage-paths
end
4

0 回答 0