This is because we model optional fields as Maybe, but they're encoded as present with null by the standard Aeson encoder. I think this is easy to configure.
As a nice side-benefit, this would also expose any bugs where we fail to POST because we've got a field as Maybe that's actually required (but accepted if present and null).
Concrete example:
Results in a User tab of:
Sometimes, this can even result in a tab of all null values. For example, if you use a simple approach like this:
This is because we model optional fields as
Maybe
, but they're encoded as present withnull
by the standard Aeson encoder. I think this is easy to configure.As a nice side-benefit, this would also expose any bugs where we fail to POST because we've got a field as
Maybe
that's actually required (but accepted if present andnull
).