我刚刚开始使用 Django,我刚刚修改了我的项目,因此我不使用基本用户,而是使用在我的 models.py 文件夹中定义的 AbstractUser 模型
#accounts/models.py
from django.contrib.auth.models import AbstractUser
from django.db import models
class CustomUser(AbstractUser):
# add additional fields in here
favourite_colour = models.CharField("Favourite Colour", max_length=100)
def __str__(self):
return self.email
Run Code Online (Sandbox Code Playgroud)
我还创建了适用于我的注册系统的创建表单
#accounts/forms.py
from django.contrib.auth.forms import UserCreationForm, UserChangeForm
from django.contrib.auth.models import User
from django import forms
from .models import CustomUser
class CustomUserCreationForm(UserCreationForm):
class Meta(UserCreationForm.Meta):
model = CustomUser
fields = ('username', 'email', 'favourite_colour')
help_texts = {
'username': 'Make something unique',
'email': None,
}
class CustomUserChangeForm(UserChangeForm):
class Meta:
model = CustomUser
fields = ('username', 'email', 'favourite_colour')
Run Code Online (Sandbox Code Playgroud)
现在我正在尝试编辑管理页面,以便我可以更改用户favourite_colour属性。到目前为止,我的admin.py文件中有这个
#accounts/admin.py
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
from .forms import CustomUserCreationForm, CustomUserChangeForm
from .models import CustomUser
class CustomUserAdmin(UserAdmin):
add_form = CustomUserCreationForm
form = CustomUserChangeForm
model = CustomUser
list_display = ['username', 'email', 'favourite_colour']
admin.site.register(CustomUser, CustomUserAdmin)
Run Code Online (Sandbox Code Playgroud)
我的问题是,一旦你点击了一个用户,我该如何制作一个字段来编辑这个CustomUser属性?,例如像这样
我欢迎任何帮助,因为我不太擅长阅读文档。请询问您是否需要在问题中添加更多代码,我以前从未问过 Django 问题
Cra*_*ley 10
经过更多的查找,我找到了一个可以在我的代码中使用的fieldsets选项(link1、link2、link3)CustomUserAdmin。在我的CustomUserAdmin课堂上,我现在有:
class CustomUserAdmin(UserAdmin):
add_form = CustomUserCreationForm
form = CustomUserChangeForm
model = CustomUser
list_display = ['username', 'email', 'favourite_colour']
fieldsets = UserAdmin.fieldsets + (
('Extra Fields', {'fields': ('favourite_colour',)}),
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6504 次 |
| 最近记录: |