Когда в валидаторе произошла ошибка, можно добавить имя ошибочного атрибута в сообщение об ошибке, поскольку это имя передано валидатору.
Но если в конвертере произошла ошибка, я не вижу способа получить имя атрибута с ошибкой, например,
@attr.s
class Test:
attr1 = attr.ib(converter=int, validator=attr.validators.in_([1,2,3]))
attr2 = attr.ib(converter=int, validator=attr.validators.in_([1,2,3]))
>>> Test('1', '2a')
ValueError: invalid literal for int() with base 10: '2a'
Как мне справиться с этим делом?