16 lines
463 B
Python
16 lines
463 B
Python
from django.db import models
|
|
from django.core.exceptions import FieldError
|
|
|
|
class TenantScopedQuerySet(models.QuerySet):
|
|
def tenant(self, tenant=None):
|
|
if tenant:
|
|
return self.filter(tenant=tenant)
|
|
return self
|
|
|
|
class TenantScopedManager(models.Manager):
|
|
def get_queryset(self):
|
|
return TenantScopedQuerySet(self.model, using=self._db)
|
|
|
|
def tenant(self, tenant=None):
|
|
return self.get_queryset().tenant(tenant)
|