我已经建立了一个这样的模型:
class Reoccurring(models.Model):
Username = models.ForeignKey(User, to_field="username")
Description = models.CharField(max_length=100)
Time = models.TimeField()
DayOrDate = models.CharField(max_length=100)
Interval = models.ForeignKey(IntervalChoices, to_field="choice", default='Week')
并像这样设置了我的模型:
valid_time_formats = ['%H:%M', '%I:%M%p', '%I:%M %p', '%H%p']
class ReoccurringForm(ModelForm):
def __init__(self, *args, **kwargs):
super(ReoccurringForm, self).__init__(*args, **kwargs)
...
self.fields['Time'] = TimeField(input_formats=valid_time_formats)
self.fields['Time'].label = ''
self.fields['Time'].widget.attrs.update({
'class': 'form-control',
'placeholder': 'Time'
})
如您所见,我将模型设置为时间字段,然后将其重置,以便我可以使用一些基本格式字符串对其进行验证。但是,当我尝试直接从模型显示到模板时,问题就出现了。我尝试这样做:
{{ item.Time }}
我得到了 HH:MM:SS 格式显示..所以我尝试使用标签来格式化它:(TIME_FORMAT 未在设置中设置)
{{ item.Time|time:"TIME_FORMAT" }}
或者
{{ item.Time|time }}
或者
{{ item.Time|time:'P' }}
而且时间根本不显示!
任何见解将不胜感激!谢谢!