我应该如何在网站上实施公司帐户?

时间:2016-10-25 17:22:42

标签: python django apache server relational-database

我已准备好用户身份验证的WEBsite。 我需要实现公司帐户功能,以便此帐户的用户可以访问corporate_account_name.main_domain.com链接,并且只能在main_domain.com中看到与此版本相同的网站。

怎么做以及在哪里挖? (或至少一系列技术,框架):

  1. 所有子域名的一个代码?
  2. 为每个子域创建单独的数据库?同时,您需要访问main_domain到所有子域的数据,反之亦然(subdomain - > main_domain)。
  3. 代码可能需要更新数据库数据的长迁移。在这种情况下,所有子域都必须冻结,直到更新的一个基础。
  4. apache上的服务器。每次创建业务帐户时都无法重启apache。
  5. 企业帐户在网络界面main_domain.com上创建(自动),就像标准用户注册一样。不要手动!
  6. django是理想的。

1 个答案:

答案 0 :(得分:0)

django-tenant-schemas套餐,似乎完全符合您的需求。

有关其工作原理的简要说明(来自文档):

  

通过主机名(即tenant.domain.com)识别租户。此信息存储在公共模式的表中。无论何时发出请求,主机名都用于匹配数据库中的租户。如果匹配,则更新搜索路径以使用此租户的架构。因此,从现在开始,所有查询都将在租户的架构中进行。例如,假设您在customer.example.com上有租户客户。在customer.example.com上传入的任何请求都将自动使用客户的架构,并根据请求提供租户。如果未找到租户,则会引发404错误。这也意味着您应该拥有主域的租户,通常使用公共架构。