在Django中實現多租戶架構通常有兩種方法:Shared Database 和 Separate Database。
示例代碼:
from django.db import models
from django_tenants.models import TenantMixin, DomainMixin
class Tenant(TenantMixin):
name = models.CharField(max_length=100)
class Domain(DomainMixin):
pass
class MyModel(models.Model):
tenant = models.ForeignKey(Tenant, on_delete=models.CASCADE)
# other fields
示例代碼:
from django.db import models
from tenant_schemas.models import TenantMixin
class Tenant(TenantMixin):
name = models.CharField(max_length=100)
# other fields
class MyModel(models.Model):
# fields
無論選擇哪種方式,都需要在Django的settings.py中配置數據庫連接信息和多租戶中間件。具體的配置和使用方法可以查看相應的第三方庫文檔。