📅  最后修改于: 2023-12-03 15:37:03.498000             🧑  作者: Mango
在 Django 开发中,有时需要使用单选按钮 (radio buttons) 来对用户进行选项的选择。单选按钮是一组只允许用户选取其中一个选项的单选控件。在 Django 中,我们可以使用内置的 RadioSelect
控件轻松地实现单选按钮。
我们需要导入以下 Django 模块和类来实现单选按钮的功能:
from django import forms
from django.forms import RadioSelect
我们需要创建一个表单类来定义单选按钮。在这个类中,我们需要定义以下两个属性:
choices
): 这是一个元组的列表,它包含了单选按钮中每个选项的值和标签。radio
): 这是一个 RadioSelect
控件,用于渲染单选按钮的 HTML。class MyForm(forms.Form):
choices = [('1', '选项 1'), ('2', '选项 2'), ('3', '选项 3')]
radio = forms.CharField(widget=RadioSelect(choices=choices))
当我们在视图函数中使用 MyForm
类时,表单会自动渲染为单选按钮。我们可以将表单对象传递给模板,并使用 {{ form }}
插入渲染好的 HTML。
def my_view(request):
if request.method == 'POST':
form = MyForm(request.POST)
if form.is_valid():
# 处理表单数据
else:
form = MyForm()
return render(request, 'my_template.html', {'form': form})
## 总结
使用 Django 中的 `RadioSelect` 控件可以轻松地实现单选按钮。我们只需要在表单类中定义选项列表和 `RadioSelect` 控件即可。在视图函数中,我们可以将表单对象传递给模板,并使用 `{{ form }}` 插入渲染好的 HTML。