Skip to content

Django Integration

Dieses Kapitel zeigt, wie man FastOpenAPI mit Django, beschrieben, einem leistungsstarken Webframework.

FastOpenAPI unterstützt Falcon über den DjangoRouter insbesondere bei Verwendung der urls.

Installation

FastOpenAPI installieren:

pip install fastopenapi

oder:

pip install fastopenapi[django]

Hello World

from django.conf import settings
from django.core.management import call_command
from django.core.wsgi import get_wsgi_application
from django.urls import path
from pydantic import BaseModel

from fastopenapi.routers import DjangoRouter

settings.configure(DEBUG=True, SECRET_KEY="__CHANGEME__", ROOT_URLCONF=__name__)
application = get_wsgi_application()

router = DjangoRouter(app=True)


class HelloResponse(BaseModel):
    message: str


@router.get("/hello", tags=["Hello"], status_code=200, response_model=HelloResponse)
def hello(name: str):
    """Say hello from django"""
    return HelloResponse(message=f"Hello, {name}! It's Django!")


urlpatterns = [path("", router.urls)]

if __name__ == "__main__":
    call_command("runserver")

Beispielprojekt

Ein vollständiges Beispiel findest du im Verzeichnis examples/django/ des Repositories.