ModelForms 是一种防止重复创建模型定义的好方法。我想做的是利用该功能并将其用于处理 POST 请求之外的其他用途。我经常使用表单进行验证。
例子:
假设您有一个包含字段(电子邮件、密码、名字、姓氏)的用户模型。电子邮件字段是唯一的并且是一个索引。
UserCreationForm:使用所有字段,如果电子邮件已存在则验证失败。处理 POST 请求 UserUpdateForm:相同的模型,但不允许更改电子邮件。因为这个字段被排除在外,所以没有问题。UserAuthenticationForm:仅包括电子邮件和密码字段。问题是,这应该用于身份验证和验证失败,因为电子邮件已经存在。
有没有办法我可以做到这一点?也就是说,让 UserAuthenticationForm 跳过电子邮件检查。
谢谢你。