我正在使用django ModelForm的django应用程序中处理“新用户”表单,除了“ position”字段不会呈现之外,其他所有东西似乎都工作正常。
我尝试覆盖默认窗口小部件,并指定我想要一个窗体。选择,但仍无法渲染。
这是我的表格。py
from django import forms
from django.contrib.auth.forms import UserCreationForm, UserChangeForm
from .models import CustomUser
class CustomUserCreationForm(UserCreationForm, forms.ModelForm):
class Meta(UserCreationForm):
model = CustomUser
fields = ('first_name', 'last_name', 'position', 'email', 'username')
widgets = {
'position': forms.Select(choices=CustomUser.POSITION_CHOICES, attrs={'class': 'form-control'}),
}
class CustomUserChangeForm(UserChangeForm):
class Meta:
model = CustomUser
fields = ('username', 'email', 'first_name', 'last_name', 'position')
这是我的模特。py
from django.contrib.auth.models import AbstractUser
from django.db import models
class CustomUser(AbstractUser):
POSITION_CHOICES = (
('a', 'Supervisor'),
('b', 'Prosecutor'),
('c', 'Paralegal')
)
first_name = models.CharField(max_length=60, null=True, blank=True)
last_name = models.CharField(max_length=60, null=True, blank=True)
position = models.CharField(max_length=1, choices=POSITION_CHOICES, null=True, blank=True)
我希望看到名称“ Position”和一个选择字段,其中包含以下选项:主管,检察官,律师助理。
我实际上只是得到了字段名“ Position”。