flask_marshmallow防止加载新实体,但允许加载现有实体

时间:2019-02-22 21:34:37

标签: python flask sqlalchemy marshmallow

棉花糖模式具有dump_only选项,可防止在load事件期间反序列化该属性中的内容。

例如:

class UserSerializationSchema(ma.ModelSchema):
    class Meta:
        model = User

    messages = fields.Nested(MessageSerializationSchema, dump_only=True)

如果这些对象已经存在,我们想让棉花糖在这些字段中加载orm对象,但是我们不希望通过反序列化来创建新对象。 Flask-marshmallow确实加载现有对象而不创建新对象,例如,运行load时的以下命令将创建具有指定email的新用户,并将其与带有{{1 }} 1:

uid

不幸的是,当{ 'email': 'email@email.com', 'messages': { 'uid': 1 } } dump_only时,上述功能不起作用。是否可以告诉棉花糖允许与现有对象关联,但不允许通过反序列化创建新对象?

0 个答案:

没有答案