Marshmallow Field not loading default value

I have a Marshmallow Schema defined as:

class MySchema: myfield = fields.Str(required=False, default=“value”)

When I do:

s = MySchema().load({})

I would expect the return to be: {‘myfield’:’value’}

But I am getting {} in return.

Is there anything am I missing?

Edit:

I’m using marshmallow 3.11 due to project limitations. I can’t upgrade to 3.15. Tried with 3.15 and it is working as expected.

1 Answer

Until marshmallow 3.12:

  • default: value to use by default when dumping (serializing)
  • missing: value to use by default when loading (deserializing)

Since marshmallow 3.13:

  • dump_default: value to use by default when dumping (serializing)
  • load_default: value to use by default when loading (deserializing)

default / missing still behave the same in marshmallow 3.13+ but issue a deprecation warning.

2

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

You Might Also Like