gpt4 book ai didi

python - 使用 Marshmallow 加载 PATCH 数据而不验证缺失字段

转载 作者:行者123 更新时间:2023-12-01 07:14:38 24 4
gpt4 key购买 nike

我正在尝试为以下 SQLAlchemy 模型和 Marshmallow-SQLAlchemy 架构实现 PATCH 路由。我想更新描述地址或两者。当我发送数据中唯一的一个字段并尝试加载它时,Marshmallow 说另一个字段丢失。如何使用 Marshmallow 加载补丁数据而不验证缺失的字段?

class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), nullable=False, unique=True)
password = db.Column(db.String(80))
description = db.Column(db.String(180))
address = db.Column(db.String(180))


class UserSchema(ma.ModelSchema):
class Meta:
model = UserModel
load_only = ("password",)
dump_only = ("id",)
{
"description": "New Description"
}
user_data = user_schema.load(request.get_json())
{
"username": [
"Missing data for required field."
]
}

最佳答案

由于它是 PATCH,因此您可以将模型实例和标记 partial=True 传递给架构。

user_data = user_schema.load(request.get_json(), instance=instance, partial=True)

关于python - 使用 Marshmallow 加载 PATCH 数据而不验证缺失字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58037463/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com