AI 웹 개발 과정/DRF 특강

DRF 퀴즈2

만 기 2022. 6. 24. 23:35

 

 

from rest_framework.response import Response
from rest_framework.views import APIView
from rest_framework import permissions, status

from post.serializers import JobPostSerializer
from .models import (
    JobPostSkillSet,
    JobType,
    JobPost,
    Company
)
from django.db.models.query_utils import Q


class SkillView(APIView):

    permission_classes = [permissions.AllowAny]

    def get(self, request):
        skills = self.request.query_params.getlist('skills', '')
        print("skills = ", end=""), print(skills)

        return Response(status=status.HTTP_200_OK)


class JobView(APIView):

    def post(self, request):
        job_type = int( request.data.get("job_type", None) )
        company_name = request.data.get("company_name", None)
        print(job_type)

        job_type_table = JobType.objects.filter(id=job_type)
        print(job_type_table)
        company = Company.objects.filter(company_name=company_name)

        if not job_type_table.exists():
            return Response({"massage":"job type 이 존재하지 않습니다."}, status=status.HTTP_400_BAD_REQUEST)

        if not company.exists():
            company = Company(company_name=company_name).save()
        else:
            company = company.first()

        job_serializer = JobPostSerializer(data=request.data)
        if job_serializer.is_valid():
            job_serializer.save(company=company, job_type=job_type_table.first())
            return Response(status=status.HTTP_200_OK)

        return Response(job_serializer.errors, status=status.HTTP_400_BAD_REQUEST)

 

 

read_only : obj -> json

 

 

'AI 웹 개발 과정 > DRF 특강' 카테고리의 다른 글

DRF 테스트 코드 작성하기 1  (0) 2022.07.11
DRF 를 이용한 JWT 사용하기  (0) 2022.06.27
DRF 복습 퀴즈  (1) 2022.06.23
DRF 특강 | 5일차  (0) 2022.06.21
DRF 특강 | 4일차  (0) 2022.06.20