Я пытаюсь предотвратить вмешательство пользователя в скрытое поле формы, проверяя вид следующим образом:
if form.fields["email"].has_changed():
form.add_error(
"email",
ValidationError(
"Email does not correspond to user", code="invalid_email",
),
)
, но я получаю следующую ошибку типа:
has_changed () пропустил 2 обязательных позиционных аргумента: 'initial' и 'data'
На этом этапе form
является "связанной формой", которая прошла через пользователя и запрос POST, кстати.
Осматривая саму функцию, она, кажется, имеет два необязательных параметра, но в документации они вообще не упоминаются, и мне не слишком ясно, что я должен передать в любом случае: если Я должен предоставить начальное значение и новое значение сам, я мог бы просто сравнить их без необходимости в этом методе. Чего мне не хватает?
Мне также пришло в голову, что мне просто нужно установить поле как отключенное, и любое измененное значение будет игнорироваться, но тем не менее мне все же любопытно.