^ Пожалуйста, прочитайте ^
Быстро учиться, быстро кодировать, быстро запускать
Django Ninja — быстрая платформа REST Django
Django Ninja — это веб-фреймворк для создания API с подсказками типов Django и Python 3.6+.
Ключевые особенности:
- Легко : Разработано, чтобы быть простым в использовании и интуитивно понятным.
- БЫСТРОЕ выполнение : Очень высокая производительность благодаря Pydantic и поддержке асинхронности .
- Быстро писать код : подсказки по типу и автоматическое документирование позволяют сосредоточиться только на бизнес-логике.
- На основе стандартов : на основе открытых стандартов для API: OpenAPI (ранее известного как Swagger) и JSON Schema .
- Дружественный к Django : (очевидно) имеет хорошую интеграцию с ядром Django и ORM.
- Готовность к производству : используется несколькими компаниями в реальных проектах (если вы используете django-ninja и хотите опубликовать свой отзыв, отправьте электронное письмо по адресу [email protected]).
Документация : https://django-ninja.dev.
Установка
Использование
В вашем проекте django рядом с urls.py создайте новый файл api.py
:
from ninja import NinjaAPI
api = NinjaAPI ()
@ api . get ( "/add" )
def add ( request , a : int , b : int ):
return { "result" : a + b }
Теперь перейдите в urls.py
и добавьте следующее:
...
from . api import api
urlpatterns = [
path ( "admin/" , admin . site . urls ),
path ( "api/" , api . urls ), # <---------- !
]
Вот и все !
Теперь вы только что создали API, который:
- получает запрос HTTP GET в
/api/add
- принимает, проверяет и приводит к типам параметры GET
a
и b
- декодирует результат в JSON
- генерирует схему OpenAPI для определенной операции
Интерактивная документация API
Теперь перейдите по адресу http://127.0.0.1:8000/api/docs.
Вы увидите автоматическую интерактивную документацию по API (предоставленную Swagger UI или Redoc):
Что дальше?
- Полную документацию можно прочитать здесь — https://django-ninja.dev.
- Чтобы поддержать этот проект, поставьте ему звездочку на Github.
- Поделитесь этим через Twitter
- Если вы уже используете django-ninja, поделитесь своим мнением по адресу [email protected].