Django 模型表单整数作为下拉列表
Django Model Form Integer as Drop Down
我的项目中有一个简单的Model表单如下:
class InviteForm(forms.ModelForm):
class Meta:
model = Invite
fields = ['max_guests', 'rsvp_guests', 'rsvp_attendance']
Max Guests 只是一个整数,显示供用户输入。由于值总是很小 (<10),我希望这是一个下拉列表,而不是所有值都为 0-max。
有没有办法覆盖这样的整数输入?
您可以使用 ChoiceField 作为
class InviteForm(forms.ModelForm):
MAX_GUESTS = (
('0', '0'),
('1', '1'),
('2', '2'),
('3', '3'),
('4', '4'),
('5', '5'),
('6', '6'),
('7', '7'),
('8', '8'),
('9', '9'),
('10', '10'),
)
max_guests = forms.ChoiceField(choices=MAX_GUESTS)
class Meta:
model = Invite
fields = ['max_guests', 'rsvp_guests', 'rsvp_attendance']
我的项目中有一个简单的Model表单如下:
class InviteForm(forms.ModelForm):
class Meta:
model = Invite
fields = ['max_guests', 'rsvp_guests', 'rsvp_attendance']
Max Guests 只是一个整数,显示供用户输入。由于值总是很小 (<10),我希望这是一个下拉列表,而不是所有值都为 0-max。
有没有办法覆盖这样的整数输入?
您可以使用 ChoiceField 作为
class InviteForm(forms.ModelForm):
MAX_GUESTS = (
('0', '0'),
('1', '1'),
('2', '2'),
('3', '3'),
('4', '4'),
('5', '5'),
('6', '6'),
('7', '7'),
('8', '8'),
('9', '9'),
('10', '10'),
)
max_guests = forms.ChoiceField(choices=MAX_GUESTS)
class Meta:
model = Invite
fields = ['max_guests', 'rsvp_guests', 'rsvp_attendance']