Bird
0
0

You want to create a custom APIView that accepts a POST request with JSON data containing a number, doubles it, and returns the result with status 200. Which code snippet correctly implements this?

hard📝 Application Q15 of 15
Django - REST Framework Basics
You want to create a custom APIView that accepts a POST request with JSON data containing a number, doubles it, and returns the result with status 200. Which code snippet correctly implements this?
Aclass DoubleView(APIView): def get(self, request): num = request.data.get('number') result = num * 2 return Response({'result': result}, status=200)
Bclass DoubleView(APIView): def post(self, request): num = request.data['number'] result = num + num return Response({'result': result}, status=201)
Cclass DoubleView(APIView): def post(self, request): num = request.data.get('number') result = num * 2 return Response({'result': result}, status=200)
Dclass DoubleView(APIView): def post(self): num = request.data.get('number') result = num * 2 return Response({'result': result}, status=200)
Step-by-Step Solution
Solution:
  1. Step 1: Check method and parameters

    POST method must be defined with self and request parameters. class DoubleView(APIView): def post(self, request): num = request.data.get('number') result = num * 2 return Response({'result': result}, status=200) correctly defines post(self, request).
  2. Step 2: Validate data access and response

    class DoubleView(APIView): def post(self, request): num = request.data.get('number') result = num * 2 return Response({'result': result}, status=200) safely uses request.data.get('number') and multiplies by 2. It returns Response with status=200 as required.
  3. Step 3: Review other options

    class DoubleView(APIView): def post(self, request): num = request.data['number'] result = num + num return Response({'result': result}, status=201) uses status=201 (wrong status). class DoubleView(APIView): def get(self, request): num = request.data.get('number') result = num * 2 return Response({'result': result}, status=200) uses get method instead of post. class DoubleView(APIView): def post(self): num = request.data.get('number') result = num * 2 return Response({'result': result}, status=200) misses request parameter in post method.
  4. Final Answer:

    class DoubleView(APIView): def post(self, request): num = request.data.get('number') result = num * 2 return Response({'result': result}, status=200) -> Option C
  5. Quick Check:

    POST with request param, multiply, status=200 [OK]
Quick Trick: POST method with request param, multiply, return status 200 [OK]
Common Mistakes:
MISTAKES
  • Using get method instead of post
  • Missing request parameter in method
  • Returning wrong status code
  • Accessing request.data incorrectly

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More Django Quizzes