Nei*_*eil 5 django django-forms
这是形式:
from django.forms.extras.widgets import SelectDateWidget
class EntryForm(forms.ModelForm):
class Meta():
model = Entry
def __init__(self, *args, **kwargs):
super(EntryForm, self).__init__(*args, **kwargs)
this_year = datetime.date.today().year
years = range(this_year-100, this_year+1)
years.reverse()
self.fields["date_of_birth"].widget = SelectDateWidget(years=years)
Run Code Online (Sandbox Code Playgroud)
出生日期字段就是这样呈现的

如何更改它以使其呈现为日,月,年?
从这个小部件的源代码我看到下拉顺序是通过DATE_FORMAT设置定义的:
format = get_format('DATE_FORMAT')
escaped = False
output = []
for char in format:
if escaped:
escaped = False
elif char == '\\':
escaped = True
elif char in 'Yy':
output.append(year_html)
elif char in 'bFMmNn':
output.append(month_html)
elif char in 'dj':
output.append(day_html)
Run Code Online (Sandbox Code Playgroud)
例如,尝试将DATE_FORMATsettings.py 更改j N, Y为.
| 归档时间: |
|
| 查看次数: |
2262 次 |
| 最近记录: |