0
0
Djangoframework~10 mins

Browsable API interface in Django - Interactive Code Practice

Choose your learning style9 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to enable the browsable API interface in Django REST Framework settings.

Django
REST_FRAMEWORK = {
    'DEFAULT_RENDERER_CLASSES': [
        'rest_framework.renderers.JSONRenderer',
        [1]
    ]
}
Drag options to blanks, or click blank then click option'
A'rest_framework.renderers.AdminRenderer'
B'rest_framework.renderers.XMLRenderer'
C'rest_framework.renderers.BrowsableAPIRenderer'
D'rest_framework.renderers.TemplateHTMLRenderer'
Attempts:
3 left
💡 Hint
Common Mistakes
Using JSONRenderer only disables the browsable interface.
Choosing XMLRenderer or AdminRenderer does not enable the browsable API.
2fill in blank
medium

Complete the code to import the browsable API renderer in your Django REST Framework views.

Django
from rest_framework.renderers import [1]
Drag options to blanks, or click blank then click option'
AJSONRenderer
BBrowsableAPIRenderer
CTemplateHTMLRenderer
DXMLRenderer
Attempts:
3 left
💡 Hint
Common Mistakes
Importing JSONRenderer only provides JSON output, no browsable interface.
TemplateHTMLRenderer is for HTML templates, not the browsable API.
3fill in blank
hard

Fix the error in the view to enable the browsable API renderer.

Django
from rest_framework.views import APIView
from rest_framework.response import Response
from rest_framework.renderers import JSONRenderer, [1]

class HelloView(APIView):
    renderer_classes = [JSONRenderer, BrowsableAPIRenderer]

    def get(self, request):
        return Response({'message': 'Hello, world!'})
Drag options to blanks, or click blank then click option'
AAdminRenderer
BTemplateHTMLRenderer
CXMLRenderer
DBrowsableAPIRenderer
Attempts:
3 left
💡 Hint
Common Mistakes
Forgetting to import BrowsableAPIRenderer causes a NameError.
Importing the wrong renderer class disables the browsable interface.
4fill in blank
hard

Fill both blanks to set the default renderer classes including the browsable API in Django settings.

Django
REST_FRAMEWORK = {
    'DEFAULT_RENDERER_CLASSES': [
        [1],
        [2]
    ]
}
Drag options to blanks, or click blank then click option'
A'rest_framework.renderers.JSONRenderer'
B'rest_framework.renderers.TemplateHTMLRenderer'
C'rest_framework.renderers.BrowsableAPIRenderer'
D'rest_framework.renderers.XMLRenderer'
Attempts:
3 left
💡 Hint
Common Mistakes
Using TemplateHTMLRenderer or XMLRenderer instead of BrowsableAPIRenderer.
Forgetting to include JSONRenderer disables JSON responses.
5fill in blank
hard

Fill all three blanks to customize a view to support JSON and browsable API renderers with a simple GET response.

Django
from rest_framework.views import APIView
from rest_framework.response import Response
from rest_framework.renderers import [1], [2]

class CustomView(APIView):
    renderer_classes = [[3]]

    def get(self, request):
        return Response({'status': 'success'})
Drag options to blanks, or click blank then click option'
AJSONRenderer
BBrowsableAPIRenderer
CJSONRenderer, BrowsableAPIRenderer
DTemplateHTMLRenderer
Attempts:
3 left
💡 Hint
Common Mistakes
Importing both renderers as one string causes syntax errors.
Setting renderer_classes to only one renderer disables the other output format.