我已经deadsnakes在我的 Ubuntu 20.04 机器上安装了 Python 3.10。
如何使用它?python3 --version返回Python 3.8.10并python3.10 -m venv venv返回错误(我python3-venv也安装了)。
因此,要使用电子邮件作为用户名,我会像这样重写内置User模型(受到Django 源代码的启发)
模型.py
class User(AbstractUser):
username = None
email = models.EmailField(unique=True)
objects = UserManager()
USERNAME_FIELD = "email"
REQUIRED_FIELDS = []
def __str__(self):
return self.email
Run Code Online (Sandbox Code Playgroud)
管理员.py
@admin.register(User)
class UserAdmin(admin.ModelAdmin):
fieldsets = (
(None, {"fields": ("email", "password")}),
(("Personal info"), {"fields": ("first_name", "last_name")}),
(
("Permissions"),
{
"fields": (
"is_active",
"is_staff",
"is_superuser",
"groups",
"user_permissions",
),
},
),
(("Important dates"), {"fields": ("last_login", "date_joined")}),
)
add_fieldsets = (
(
None,
{
"classes": ("wide",),
"fields": ("email", "password1", "password2"),
},
),
)
list_display = …Run Code Online (Sandbox Code Playgroud)