2014-10-06 6 views
1

Я хочу поместить некоторые данные из базы данных на страницу индекса администратора, поэтому я пытаюсь добавить код в index.html, но такие команды, как Model_name.object.get(), не делают как представляется, работают тамПолучить данные из базы данных в главную страницу администратора django

<ul>{% trans 'Last Update at ' %} 
    {% for entryupdate in Updatetime.objects.all %} 
      {{ entryupdate.updatetime }} 
    {% endfor %} 
</ul> 

так что я должен использовать вместо этого? Проблема в том, что нет никакой переменной, связанной с объектом, который мне нужен. Если бы это была любая другая страница, я мог бы добавить эту переменную в views.py, но это не тот случай. Спасибо!

ответ

1

Эти функции не работают в любые шаблоны.

Чтобы запросить данные и вернуть их, вы должны использовать собственный тег шаблона.

+1

Не верно, что функция будет работать только штрафом в шаблоне, предполагая класс Updatetime был принят в качестве переменной в шаблоне. – Ben

+0

как передать этот класс переменной в шаблон index.html? Мне нужно изменить представление/admin/main page. –

0

Спасибо к кончику Daniel я создал этот тег:

import datetime 
from django import template 
from Myapp.models import Updatetime 

register = template.Library() 

def update_time(): 
    ss = Updatetime.objects.get(pk=1) 
    str11 = ss.updatetime.strftime("%d-%m-%Y %H:%M:%S") 
    return str11 

register.simple_tag(update_time) 
Смежные вопросы