Why don't you catch the case `not hasattr(value, 'person_d')` instead?