【Django-ninja】django-ninja的hello world

django-ninja简介

Django Ninja是一个用于使用Django和**Python 3.6+**类型提示构建API的Web框架。

主要特点:

易用性:旨在易于使用和直观。

高性能执行:由于Pydantic和异步支持,具有非常高的性能。

编码效率高:类型提示和自动生成文档使您只需专注于业务逻辑。

基于标准:基于API的开放标准:OpenAPI(以前称为Swagger)和JSON Schema。

与Django友好:(显然)与Django核心和ORM良好集成。

开始helloworld

开始一个django项目

复制代码
django-admin startproject apidemo

urls.py文件中。

复制代码
from django.contrib import admin
from django.urls import path
from ninja import NinjaAPI

api = NinjaAPI()


@api.get("/add")
def add(request, a: int, b: int):
    return {"result": a + b}


urlpatterns = [
    path("admin/", admin.site.urls),
    path("api/", api.urls),
]

使用manage.py运行

测试环境可以直接使用Django自带的web服务器运行。

复制代码
python manage.py runserver

使用uvicorn运行

生产环境可以使用uvicorn运行支持异步的asgi服务器。

bash 复制代码
uvicorn apidemo.asgi:application --host 127.0.0.1 --port 8000 --workers 4
相关推荐
Chef_Chen1 分钟前
从0开始学习R语言--Day39--Spearman 秩相关
开发语言·学习·r语言
天水幼麟6 小时前
动手学深度学习-学习笔记(总)
笔记·深度学习·学习
天水幼麟8 小时前
动手学深度学习-学习笔记【二】(基础知识)
笔记·深度学习·学习
沧海一笑-dj9 小时前
【51单片机】51单片机学习笔记-课程简介
笔记·学习·51单片机·江科大·江科大学习笔记·江科大单片机·江科大51单片机
老虎06279 小时前
JavaWeb(苍穹外卖)--学习笔记04(前端:HTML,CSS,JavaScript)
前端·javascript·css·笔记·学习·html
小石潭记丶10 小时前
Django服务开发镜像构建
django·sqlite·pip
大苏打seven10 小时前
Docker学习笔记:Docker网络
笔记·学习·docker
Green1Leaves12 小时前
pytorch学习-9.多分类问题
人工智能·pytorch·学习
慕y27412 小时前
Java学习第十五部分——MyBatis
java·学习·mybatis
碣石潇湘无限路13 小时前
【AI篇】当Transformer模型开始学习《孙子兵法》
人工智能·学习