Proposed partial fix for issue #19820

This is a partial fix for issue #19820. It provides the users a better error message by giving: the model being deserialized; the model's pk, if any; and what the current field value is.
can the try/except block be smaller? I don't think the next 3 lines should thrown an exception at least.