Public API¶
django_fastapi
¶
create_fastapi_app(config=None)
¶
Create a FastAPI app from Django settings or an explicit config.
csrf_exempt(func)
¶
Mark a FastAPI path operation as exempt from Django CSRF checks.
django_response_to_fastapi(response)
¶
Convert a Django response into a Starlette response.
get_authenticated_user(user)
¶
Return the current Django user or raise 401 for anonymous callers.
get_current_staff_user(user)
¶
Return the current staff user or raise 403.
get_current_user(request)
¶
Return the current Django user or AnonymousUser.
get_django_fastapi_application(fastapi_app=None, *, prefix=None, name='fastapi')
¶
Create Django's ASGI app and mount a FastAPI app beside it.
get_django_request(request)
async
¶
Build and cache a Django-compatible request for a FastAPI request.
get_fastapi_prefix(config=None)
¶
Return the configured FastAPI ASGI mount prefix.
mount_django_fastapi_app(django_app, fastapi_app=None, *, prefix=None, name='fastapi')
¶
Mount a FastAPI ASGI app before falling back to Django.
mount_fastapi_app(django_app, fastapi_app, *, path='/fastapi', name='fastapi')
¶
Backward-compatible alias for manually mounting a FastAPI app.
require_csrf(request, django_request)
async
¶
Require Django CSRF validation for unsafe FastAPI requests by default.
session_auth_resolver(_request, django_request)
¶
Resolve Django's normal session-authenticated user.