Commit 0e4f8c53 authored by Gladys Forte's avatar Gladys Forte

select_related

parent ca7d9461
......@@ -7,7 +7,7 @@ from django.conf import settings
class AppTokenAuthentication(TokenAuthentication):
keyword = 'Bearer'
def authenticate_credentials(self, key):
user, token = super(AppTokenAuthentication,
......
......@@ -27,7 +27,7 @@ class Login(ObtainAuthToken):
def post(self, request, *args, **kwargs):
try:
serializer = self.serializer_class(data=request.data,
context={'request': request})
context={'request': request})
serializer.is_valid(raise_exception=True)
user = serializer.validated_data['user']
token, created = Token.objects.get_or_create(user=user)
......@@ -87,7 +87,7 @@ class CurrentUser(APIView):
# @decorators.error_safe
def get(self, request, token=None, *args, **kwargs):
serializer = UserManagementRetreiveSerializer
context = {"request": request}
serializer = serializer(request.user, context=context)
......
......@@ -9,7 +9,7 @@ class AllowedCompanySerializer(serializers.ModelSerializer):
ret['department'] = model_to_dict(instance.group_pivots)
ret['company'] = model_to_dict(instance.company_pivot)
return ret
class Meta:
model = AllowedCompany
fields = '__all__'
......
......@@ -11,7 +11,7 @@ class AllowedCompanyFilterSet(filters.FilterSet):
# Q(username__icontains=value) |
# Q(first_name__icontains=value) |
# Q(last_name__icontains=value))
class Meta:
model = AllowedCompany
fields = '__all__'
......@@ -20,7 +20,10 @@ from django.db import IntegrityError
class AllowedCompanyViewSet(viewsets.ModelViewSet):
queryset = AllowedCompany.objects.all()
# queryset = AllowedCompany.objects.all()
queryset = AllowedCompany.objects.select_related(
'id_number', 'company_pivot', 'group_pivots'
).all()
serializer_class = AllowedCompanySerializer
pagination_class = CustomPagination
lookup_field = 'code'
......
......@@ -8,6 +8,7 @@ class ChangeRequestFormApproversSerializer(
):
def to_representation(self, instance):
ret = super().to_representation(instance)
print(instance)
try:
ret['company'] = {
"id": instance.user.department.company.id,
......
......@@ -10,8 +10,7 @@ class headers(serializers.ModelSerializer):
ret['modified'] = instance.modified.strftime('%Y-%m-%d-%H:%M:%S')
return ret
class Meta:
model = models.Company
fields = (
......
......@@ -11,11 +11,11 @@ class UserTypeViewSet(APIView):
enums_company = enums.UserTypeEnum.COMPANY_USER_ADMIN.value
enums_department = enums.UserTypeEnum.DEPARTMENT_USER_ADMIN.value
enums_user = enums.UserTypeEnum.USER.value
data = {
'Super user': enums_super,
'Overall user admin': enums_OUA,
"Company user admin": enums_company,
"Company user admin": enums_company,
"Department user admin": enums_department,
"user": enums_user
}
......
......@@ -22,8 +22,6 @@ from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
# path('admin/', admin.site.urls),
path('api-auth/', include('rest_framework.urls')),
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment