원클릭으로
django-drf
// Django REST Framework patterns for serializers, viewsets, routers, permissions, and authentication. Use when building or reviewing projects with djangorestframework in dependencies.
// Django REST Framework patterns for serializers, viewsets, routers, permissions, and authentication. Use when building or reviewing projects with djangorestframework in dependencies.
| name | django-drf |
| description | Django REST Framework patterns for serializers, viewsets, routers, permissions, and authentication. Use when building or reviewing projects with djangorestframework in dependencies. |
| model | haiku |
This skill provides reference patterns for building APIs with Django REST Framework (DRF). It covers serializer design, viewset architecture, routing, filtering, pagination, authentication, and permissions.
djangorestframework in its dependencies| None instead of Optional for type hintsselect_related / prefetch_related in viewset get_queryset(), not in serializersREST_FRAMEWORK = {
"DEFAULT_AUTHENTICATION_CLASSES": [
"rest_framework_simplejwt.authentication.JWTAuthentication",
"rest_framework.authentication.SessionAuthentication",
],
"DEFAULT_PERMISSION_CLASSES": [
"rest_framework.permissions.IsAuthenticated",
],
"DEFAULT_PAGINATION_CLASS": "rest_framework.pagination.PageNumberPagination",
"PAGE_SIZE": 20,
"DEFAULT_FILTER_BACKENDS": [
"django_filters.rest_framework.DjangoFilterBackend",
"rest_framework.filters.SearchFilter",
"rest_framework.filters.OrderingFilter",
],
"DEFAULT_THROTTLE_CLASSES": [
"rest_framework.throttling.AnonRateThrottle",
"rest_framework.throttling.UserRateThrottle",
],
"DEFAULT_THROTTLE_RATES": {
"anon": "100/hour",
"user": "1000/hour",
},
}
app/
serializers.py # All serializers for this app
views.py # ViewSets and API views
urls.py # Router registration
permissions.py # Custom permission classes
filters.py # Custom filter classes
pagination.py # Custom pagination classes
throttling.py # Custom throttle classes
tests/
test_api.py # API endpoint tests