kkkkk
kkkkk

Reputation: 716

Django TimeField format

I have time in format something like there: "10 a.m., noon". I want to have in format: 10:00, 12:00, 15:00 etc. I've tried in my html file:

{{ value|time:"H:M" }}

I also tried in my settings

TIME_INPUT_FORMATS = ('%H:%M',)

Nothing work.

In my models I have:

time = models.TimeField(blank=True, null=True)

views.py

times= Hours_classes.objects.all()
context = {'teacher_id': teacher_id,
           'query_results': query_results,
           'times': times}
return render(request, 'planner/teacher.html', context)

teacher.html

<tr>
<th></th>
{% for item in times %}
    <th>{{ item.time_start|time:"H:M" }} - {{ item.time_end|time:"H:M" }} </th>
{% endfor %}
</tr>

models.py

class Hours_classes(models.Model):
    time_start = models.TimeField(blank=True, null=True)
    time_end = models.TimeField(blank=True, null=True)

Upvotes: 1

Views: 9712

Answers (1)

gtlambert
gtlambert

Reputation: 11961

"H:M" is not a valid format to pass to the Django template time filter. You need to use:

{{ value|time:"H:i" }}

Upvotes: 3

Related Questions