当前位置: 首页 > news >正文

找企业名录的网站网站的横幅怎么做

找企业名录的网站,网站的横幅怎么做,门户网站 源码,游戏网站网页模板html请求体字段 与在路径操作函数中使用 Query、Path 、Body 声明校验与元数据的方式一样,可以使用 Pydantic 的 Field 在 Pydantic 模型内部声明校验和元数据。 在声明请求体数据模型时可以使用Field定义模型属性 from fastapi import FastAPI, Query , Path, Body fro…

请求体字段

与在路径操作函数中使用 Query、Path 、Body 声明校验与元数据的方式一样,可以使用 Pydantic 的 Field 在 Pydantic 模型内部声明校验和元数据。

在声明请求体数据模型时可以使用Field定义模型属性

from fastapi import FastAPI, Query , Path, Body
from typing import Annotated, Literal
from pydantic import BaseModel, Fieldclass Item(BaseModel):name: strdescription: str | None = Field(default=None, title="The description of the item",max_length=300)price: float = Field(gt=0,description="The price of the item")tax: float | None = Noneapp = FastAPI()@app.put("/items/{item_id}")
async def update_item(item_id: int, item: Annotated[Item, Body(embed=True)]):result = {"item_id": item_id,"item": item}return result

请求体嵌套模型

List字段

可以将一个属性定义为拥有子元素的类型。例如 Python list

from fastapi import FastAPI
from pydantic import BaseModelapp = FastAPI()class Item(BaseModel):name: strdescription: str | None = Noneprice: floattax: float | None = Nonetags: list = []@app.put("/items/{item_id}")
async def update_item(item_id: int, item: Item):results = {"item_id": item_id, "item": item}return results

这将使 tags 成为一个由元素组成的列表。不过它没有声明每个元素的类型。

具有子类型的list字段

 tags: list[str] = []

Set类型

tags: set[str] = set()

嵌套模型

对于不同的pydantic模型,可以实现彼此嵌套

from fastapi import FastAPI
from pydantic import BaseModelapp = FastAPI()class Image(BaseModel):url: strname: strclass Item(BaseModel):name: strdescription: str | None = Noneprice: floattax: float | None = Nonetags: set[str] = set()image: Image | None = None@app.put("/items/{item_id}")
async def update_item(item_id: int, item: Item):results = {"item_id": item_id, "item": item}return results

对于Item将期待以下格式的请求体

{"name": "Foo","description": "The pretender","price": 42.0,"tax": 3.2,"tags": ["rock", "metal", "bar"],"image": {"url": "http://example.com/baz.jpg","name": "The Foo live"}
}

纯列表请求体

如果你期望的 JSON 请求体的最外层是一个 JSON array(即 Python list),则可以在路径操作函数的参数中声明此类型

from fastapi import FastAPI
from pydantic import BaseModel, HttpUrlapp = FastAPI()class Image(BaseModel):url: HttpUrlname: str@app.post("/images/multiple/")
async def create_multiple_images(images: list[Image]):return images

额外定义数据

可以使用 Config 和 schema_extra 为Pydantic模型声明一个示例

from fastapi import FastAPI
from pydantic import BaseModelapp = FastAPI()class Item(BaseModel):name: strdescription: str | None = Noneprice: floattax: float | None = Nonemodel_config = {"json_schema_extra": {"examples": [{"name": "Foo","description": "A very nice Item","price": 35.4,"tax": 3.2,}]}}@app.put("/items/{item_id}")
async def update_item(item_id: int, item: Item):results = {"item_id": item_id, "item": item}return results

这会在doc文档中生成示例
在这里插入图片描述
在Field, Path, Query, Body等声明中也可以附加额外参数

from fastapi import FastAPI
from pydantic import BaseModel, Fieldapp = FastAPI()class Item(BaseModel):name: str = Field(examples=["Foo"])description: str | None = Field(default=None, examples=["A very nice Item"])price: float = Field(examples=[35.4])tax: float | None = Field(default=None, examples=[3.2])@app.put("/items/{item_id}")
async def update_item(item_id: int, item: Item):results = {"item_id": item_id, "item": item}return results

以及可以将额外参数传递给Body

from typing import Annotatedfrom fastapi import Body, FastAPI
from pydantic import BaseModelapp = FastAPI()class Item(BaseModel):name: strdescription: str | None = Noneprice: floattax: float | None = None@app.put("/items/{item_id}")
async def update_item(item_id: int,item: Annotated[Item,Body(examples=[{"name": "Foo","description": "A very nice Item","price": 35.4,"tax": 3.2,}],),],
):results = {"item_id": item_id, "item": item}return results

额外数据类型

可以用到的其他参数类型:

参数类型说明
UUID一种标准的 “通用唯一标识符” ,在许多数据库和系统中用作ID。在请求和响应中将以 str 表示。
datetime.datetime一个 Python datetime.datetime.在请求和响应中将表示为 ISO 8601 格式的 str ,比如: 2008-09-15T15:53:00+05:00.
datetime.datePython datetime.date.在请求和响应中将表示为 ISO 8601 格式的 str ,比如: 2008-09-15.
datetime.time一个 Python datetime.time.在请求和响应中将表示为 ISO 8601 格式的 str ,比如: 14:23:55.003.
datetime.timedelta一个 Python datetime.timedelta.在请求和响应中将表示为 float 代表总秒数。Pydantic 也允许将其表示为 “ISO 8601 时间差异编码”
frozenset在请求和响应中,作为 set 对待:在请求中,列表将被读取,消除重复,并将其转换为一个 set。在响应中 set 将被转换为 list 。产生的模式将指定那些 set 的值是唯一的 (使用 JSON 模式的 uniqueItems)。
bytes标准的 Python bytes。在请求和响应中被当作 str 处理。生成的模式将指定这个 str 是 binary “格式”。
Decimal标准的 Python Decimal。在请求和响应中被当做 float 一样处理。
http://www.dtcms.com/a/598599.html

相关文章:

  • 工具学习_Vulrule
  • 上海外贸soho网站建设静态网站登陆怎么做
  • 哈希表中桶的概念
  • 网站建设系统设计重庆百度搜索排名优化
  • 中山快速做网站服务盐城网站建设流程
  • LangFlow 中,节点间的数据流动核心是 **“输入-输出端口映射”+“执行链路驱动”**
  • 百度上怎么制作自己的网站中文网页设计案例欣赏
  • 深度学习:python动物识别分类检测系统 Django框架 CNN算法 深度学习 卷积神经网络 TensorFlow (建议收藏)✅
  • 【C++基础与提高】第四章:运算符与表达式——构建程序逻辑的工具
  • 专业提供网站制作双语言网站源码
  • 太原论坛网站开发公司芜湖网站公司
  • 深度学习模型CNN识别恶意软件
  • 模型-详解 Vision Transformer (ViT)
  • 广州专业做网站公司热门网页设计制作代码
  • 温岭 网站制作企业网站自己可以做
  • 虚拟机做网站有用吗关键词seo排名优化推荐
  • Springboot-WebService 服务端发布与客户端调用
  • CentOS7 + VMware 搭建 K3s 集群遇到的网络问题全记录与解决方案
  • flowable03任务
  • 手机软件网站京东网页版
  • 国外网站设计大全营销业务应用系统
  • 每日算法刷题Day84:11.11:leetcode 动态规划9道题,用时2h
  • 网站建设开发设计营销公司山东建设网站平台合同范本
  • 网站建设玖金手指谷哥四网站对一个关键词做排名怎么做
  • Windows 系统上安装 Kafka
  • 不成立公司怎么做企业网站php网站开发占比
  • 机加工如何用网站开发客户php实现网站消息推送
  • 百日挑战——单词篇(第十九天)
  • RabbitMQ 小项目之扫盲班
  • 自己如何在网上做网站黄页88网企业名录