У меня проблемы с пониманием того, почему существует разница в структуре валидаторов паролей и обычных валидаторов в Django.
После документов каждый валидатор должен быть вызываемым (beeing класс или функция), которая вызывает ValidationError , если ввод не проверяется, иначе None .
В связанных документах также предоставляется обзор реализованных валидаторов.
Однако я обнаружил, что есть валидаторы, которых здесь нет, а именно валидаторы паролей. Их можно найти в модуле django .contrib.auth.password_validation .
Также эти валидаторы, похоже, следуют другой философии ie в своей структуре. Вместо поведения, описанного выше, валидаторы кажутся классами с методом под названием validate .
Вот учебное пособие , которое я обнаружил, объясняющее создание таких валидаторов .
Теперь у меня вопрос, почему и чем отличаются эти валидаторы? Почему валидаторы паролей не указаны в документации по валидаторам и почему они были созданы по-другому?
Я что-то упустил? Не мог бы кто-нибудь дать мне некоторое представление о плюсах и минусах этой концепции? Разве не вводит в заблуждение наличие списка валидаторов, а затем отсутствие в нем валидаторов паролей?
Заранее спасибо!