在Django中显示一系列带有过去日期的下拉列表

在Django中显示一系列带有过去日期的下拉列表,django,django-forms,Django,Django Forms,我在Django中使用模型表单,允许用户输入他们的出生日期。我想让用户从一系列下拉列表中选择日期,年、月、日各一个。最初我认为SelectDateWidget可以工作。然而,这个特定的小部件只显示未来的日期。我当然只想显示过去的日期 有没有简单的方法可以做到这一点?SelectDateWidget不仅仅用于将来的日期。如果希望日期在过去,则需要将不同的年份参数传递到小部件中,否则它将使用当前年份。因此,在您的表单中,只需执行以下操作: SelectDateWidget(years=range(1

我在Django中使用模型表单,允许用户输入他们的出生日期。我想让用户从一系列下拉列表中选择日期,年、月、日各一个。最初我认为SelectDateWidget可以工作。然而,这个特定的小部件只显示未来的日期。我当然只想显示过去的日期


有没有简单的方法可以做到这一点?

SelectDateWidget
不仅仅用于将来的日期。如果希望日期在过去,则需要将不同的
年份
参数传递到小部件中,否则它将使用当前年份。因此,在您的表单中,只需执行以下操作:

SelectDateWidget(years=range(1985, datetime.date.today().year+10))
它基本上接受一个年份列表,使用
range
函数可以很好地实现这一点

您可以看到小部件是如何工作的