【发布时间】:2020-12-25 08:31:10
【问题描述】:
我用 Django 创建了一个系统。我创建了一个带有一些自定义字段的抽象用户模型。我的表单正在运行,但在管理页面中我看不到我的自定义模型。
models.py
class UserProfile(AbstractUser):
ranks = (
...
('cfo', 'Chief Financial Officier'),
)
comp_name = models.CharField(max_length=200, default="Choose")
user_id = models.UUIDField(default=uuid.uuid4(), editable=False, unique=True)
username = models.CharField(max_length=500, unique=True)
first_name = models.CharField(max_length=200)
last_name = models.CharField(max_length=200)
password = models.CharField(max_length=50)
email = models.EmailField(max_length=254)
rank = models.CharField(max_length=200, choices=ranks)
def __str__(self):
return self.username
class CompanyProfile(models.Model):
...
admin.py
admin.site.register(CompanyProfile)
class CustomUser(UserAdmin):
add_form = SignUpForm
model = UserProfile
form = SignUpChangeForm
list_display = ('username', 'first_name', 'email', 'last_name', 'rank', 'comp_name')
fieldsets = (
(None, {'fields': ('email', 'password')}),
)
add_fieldsets = (
(None, {
'classes': ('wide',),
'fields': ('email', 'password1', 'password2', 'rank', 'comp_name')}
),
)
search_fields = 'email'
admin.site.register(UserProfile, UserAdmin)
正如您在管理视图中所见,没有 ranks 和 company name 字段。我该如何解决?
【问题讨论】:
标签: python django django-models django-admin