django 选择日期小部件选项

7eumitmz  于 2022-12-20  发布在  Go
关注(0)|答案(1)|浏览(96)

我想根据我的DB数据手动设置表单中的日期选项。
下面是我正在使用的代码的代码片段

DATA_YEARS = ('2017', '2018')
DATA_MONTHS = ('1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12')

class DateForm(forms.Form):
    year = forms.DateField(widget=forms.SelectDateWidget(years=DATA_YEARS))
    month = forms.DateField(widget=forms.SelectDateWidget(months=DATA_MONTHS))

然而,我认为SelectDateWidget并不期望接收这些参数。
如果没有,我如何正确地实现它?

lrl1mhuk

lrl1mhuk1#

这可能会对你有帮助。我正在开发一个表单,其中我要求用户的出生日期,因此我这样做:

from django import forms
import datetime

class FeedbackForm(forms.Form):
    user_name = forms.CharField()
    date_of_birth = forms.DateField(
        widget=forms.SelectDateWidget(
            years=range(1980, datetime.date.today().year - 15)
        )
    )
    email_address = forms.EmailField()

注:我减去了15,因为我在寻找至少15岁的人的出生日期,你可能忽略了这一点。

相关问题