views.py 830 B

123456789101112131415161718192021222324252627282930313233343536
  1. from __future__ import unicode_literals
  2. from extras.api.views import CustomFieldModelViewSet
  3. from tenancy import filters
  4. from tenancy.models import Tenant, TenantGroup
  5. from utilities.api import FieldChoicesViewSet, ModelViewSet
  6. from . import serializers
  7. #
  8. # Field choices
  9. #
  10. class TenancyFieldChoicesViewSet(FieldChoicesViewSet):
  11. fields = ()
  12. #
  13. # Tenant Groups
  14. #
  15. class TenantGroupViewSet(ModelViewSet):
  16. queryset = TenantGroup.objects.all()
  17. serializer_class = serializers.TenantGroupSerializer
  18. filter_class = filters.TenantGroupFilter
  19. #
  20. # Tenants
  21. #
  22. class TenantViewSet(CustomFieldModelViewSet):
  23. queryset = Tenant.objects.select_related('group')
  24. serializer_class = serializers.TenantSerializer
  25. write_serializer_class = serializers.WritableTenantSerializer
  26. filter_class = filters.TenantFilter