django - Django 管理员在尝试登录管理站点时调用 ```.save()``` 方法
问题描述
auth 用户模型扩展AbstractUser
并覆盖了该.save()
方法。该模型包含两个必填字段和唯一字段。它还调用.full_clean()
该.save()
方法。当管理员尝试登录时会出现问题。Django 抛出一个验证错误,指出这两个字段不能为空。.full_clean()
注释掉时错误消失。
为什么 Django 管理员.save()
在尝试登录管理站点时调用该方法?
解决方案
虽然这不能直接回答问题,但它提供了一个解决方案。
对于任何有兴趣的人,一种可能的解决方法是.full_clean()
这样调用:
if not self.is_superuser:
self.full_clean()
推荐阅读
- javascript - 有没有办法让提交按钮仅使用 HTML 的输入中的特定代码可用?
- javascript - Firebase:从事务中返回批量写入
- java - 无法在未命名的模块加载器应用中将用户详细信息服务强制转换为用户
- c# - 使用 Microsoft Graph 删除一系列日历事件不包括边界上的“全天”事件
- php - 如何在 WordPress 中构建“用户组”访问控制?
- ajax - Ajax 在嵌入页面内的 wordpress 上不起作用
- ruby - Benchmark.measure 不给我用户、系统和总时间
- c# - 仅检查子对象应该有数据
- c++ - 类型转换(*void[] 到向量 C++)
- functional-programming - 杂质会影响操作的关联性吗?