from rest_framework import generics from tenancy.models import Tenant, TenantGroup from tenancy.filters import TenantFilter from extras.api.views import CustomFieldModelAPIView from . import serializers class TenantGroupListView(generics.ListAPIView): """ List all tenant groups """ queryset = TenantGroup.objects.all() serializer_class = serializers.TenantGroupSerializer class TenantGroupDetailView(generics.RetrieveAPIView): """ Retrieve a single circuit type """ queryset = TenantGroup.objects.all() serializer_class = serializers.TenantGroupSerializer class TenantListView(CustomFieldModelAPIView, generics.ListAPIView): """ List tenants (filterable) """ queryset = Tenant.objects.select_related('group').prefetch_related('custom_field_values__field') serializer_class = serializers.TenantSerializer filter_class = TenantFilter class TenantDetailView(CustomFieldModelAPIView, generics.RetrieveAPIView): """ Retrieve a single tenant """ queryset = Tenant.objects.select_related('group').prefetch_related('custom_field_values__field') serializer_class = serializers.TenantSerializer