2015-12-17 3 views
2

Мой шаблон делает тег {{ test.date}} в следующем формате -дата форматирования в шаблоне Джанго

2015-12-15T23:55:33.422679

При попытке отформатировать его с помощью Джанго встроенного в тег шаблона date, он ничего не отображается.

Вариации Я пробовал:

{{ test.date|date:"SHORT_DATE_FORMAT" }}

{{ test.date|date:"D d M Y" }}

models.py:

class Human(models.Model): 
    name = models.CharField(max_length=50,default='',blank=False) 


class Test(models.Model): 
    human = models.ForeignKey(Human) 
    date = models.DateTimeField(default=datetime.now) 

views.py:

def list(request): 
    h = Human.objects.all() 
    s=[] 
    for her in h: 
     t = h.test_set.all() 
     s.extend(t) 
    context = RequestContext(request, {'test_list': s,}) 
    return render_to_response('template.html', context) 

Я использую его в шаблоне:

{% for test in test_list %} 
    {{test.date}} 
{% endfor %} 

Что мне не хватает?

+0

выглядит хорошо, что вы видите, не используя '| дату:'? Можете ли вы добавить обзор в вопрос –

+0

, вы должны поместить свой код в вопрос – 1844144

+0

Что такое 'test.date' здесь? Это фактический объект datetime, или это строковая метка времени? –

ответ

2

Я не уверен, что вы хотите от этой логики, но я думаю, что вы можете использовать это:

def list(request): 
    test = Test.objects.all() 
    return render(request, 'template.html', {'test':test}) 

и в шаблоне:

{% for t in test %} 
    {% t.date %} 
{% endfor %} 

если вы хотите отображения человека, просто добавить в цикле {% t.human.name %}

+0

Как ваш код отличается? Я делаю то же самое. Передача списка тестов как 'test_list', а затем с помощью' test.date' – qwertp

+0

@qwertp Это более понятно и просто, и это сработает, если вы создали объекты 'Test' –

+0

Но это не моя проблема. Моя проблема в том, что я не могу форматировать 'test.date', используя тег шаблона' date'. Я хочу знать, может ли решение быть использовано с помощью набора запросов тестовых объектов. – qwertp