【发布时间】:2018-05-25 13:21:19
【问题描述】:
我有一个 django 模板和一个表单,我希望用户在其中输入日期和时间到正确的字段中,并将日期和时间保存到数据库中。我还想在创建表单时初始化一个特定时间。我目前在我的模型和表单中有日期时间字段,但我不知道如何让它同时显示时间和日期。到目前为止,它只显示默认日期。这是我现在拥有的代码。
型号:
class Event(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
calendar = models.ForeignKey(Calender, on_delete=models.CASCADE)
name = models.CharField(max_length=30, default='Event')
start_date = models.DateTimeField(default='1950-01-01')
end_date = models.DateTimeField(default='1950-01-01')
email = models.CharField(max_length=40, default='example@example.com')
location = models.CharField(max_length=40, default='location')
notes = models.CharField(max_length=200, default='note')
repeat = models.IntegerField()
# 0 = no repeat
# 1 = daily
# 2 = weekly
# monthly
created = models.DateTimeField(auto_now_add=True)
表格:
class CreateEventForm(forms.ModelForm):
start_date = forms.DateTimeField(
label='Start',
widget=forms.widgets.DateInput(attrs={'type':'date'}),
)
end_date = forms.DateTimeField(
label='End',
widget=forms.widgets.DateInput(attrs={'type':'date'})
)
class Meta:
model = Event
fields = ['name', 'start_date', 'end_date', 'location', 'notes']
观看次数:
form = CreateCalenderForm()
parameters = {
'form':form,
}
return render(request, 'calender/create_calender.html', parameters)
这是它的样子:
【问题讨论】:
-
我知道有一个时间字段,但是有什么方法可以让我将日期和时间输入显示为来自 DateTimeField 的一个大输入。如果可以的话,我宁愿一个字段超过两个不同的字段......@guillermochamorro
标签: django django-models django-forms django-views