您的位置:首页 > 健康 > 美食 > 长沙seo排名公司_t恤在线制作网站_如何宣传推广产品_百度指数搜索

长沙seo排名公司_t恤在线制作网站_如何宣传推广产品_百度指数搜索

2024/12/23 19:10:20 来源:https://blog.csdn.net/imblackcat/article/details/143490103  浏览:    关键词:长沙seo排名公司_t恤在线制作网站_如何宣传推广产品_百度指数搜索
长沙seo排名公司_t恤在线制作网站_如何宣传推广产品_百度指数搜索

(1)response_model

是路径操作上的参数
先注意以下概念区分细节,什么是路径操作和路径函数:
在这里插入图片描述

在这里插入图片描述在这里插入图片描述
输出的时候会以userOut的模型类型输出!
(2)路径response model exclude_unset
通过上面的例子,我们学到了如何用response model控制响应体结构,但是如果它们实际上没有存储,则可能要从结果中忽略它们。例如,如果model在NoSQL数据库中具有很多可选属性,但是不想发送很长的JSON响应,其中包含默认值。即排除没有设置的值。
在这里插入图片描述
其他相关参数:
使用路径操作装饰器的 response_model 参数来定义响应模型,特别是确保私有数据被过滤掉。使用response_model exclude_unset 来仅返回显式设定的值。除了 responsee_model exclude_unset 以外,还有 response model exclude defaultsresponse model exclude none我们可以很直观的了解到他们的意思,不返回是默认值的字段和不返回是None的字段。
`responsee_modele_include:只显示某些字段:
在这里插入图片描述只显示name和price字段!

`responsee_modele_exclude:删除某个字段

官方文档:响应模型在这里插入图片描述

响应模型在参数中被声明,而不是作为函数返回类型的注解,这是因为路径函数可能不会真正返回该响应模型,而是返回一个
dict、数据库对象或其他模型,然后再使用 response_model 来执行字段约束和序列化

python查漏补缺

class UserInDB(BaseModel):username: strhashed_password: stremail: EmailStrfull_name: Union[str, None] = Nonedef fake_password_hasher(raw_password: str):return "supersecret" + raw_passworddef fake_save_user(user_in: UserIn):hashed_password = fake_password_hasher(user_in.password)user_in_db = UserInDB(**user_in.dict(), hashed_password=hashed_password)print("User saved! ..not really")return user_in_db

1.user_in.dict()
是 Python 的字典解包操作符。它会将字典中的键值对解包为关键字参数传递给函数或类构造器。

也就是说,**user_in.dict() 会将 user_in.dict() 返回的字典内容(例如,‘username’: ‘johndoe’)传递给 UserInDB 构造器,作为关键字参数。

例如,假设 user_in.dict() 返回了以下字典:

{'username': 'johndoe','password': 'plaintextpassword','email': 'johndoe@example.com','full_name': 'John Doe'
}

那么执行 **user_in.dict() 后,相当于将以下关键字参数传递给 UserInDB 构造器:

username='johndoe', password='plaintextpassword', email='johndoe@example.com', full_name='John Doe'

2.hashed_password=hashed_password

这部分将 hashed_password 作为额外的关键字参数传递给 UserInDB 构造器。这个参数是在 user_in.dict() 中没有的,因此需要单独传入。
在原始的 user_in 数据模型中,可能没有 hashed_password 字段,而是 password 字段。为了加密后保存密码,你计算了 hashed_password,并显式将其传入 UserInDB 构造函数。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com