среда, 16 июля 2008 г.

Описание Inclusion tags

С помощью Inclusion tags можно выводить одни и те же данные на каждой странице вашего сайта, например в сайдбаре вывести список пользователей. С помощью simple tags такое сделать весьма сложно, мне лично не удалось.
Inclusion tags очень похожи на simple tags.

# templatetags/give_me_users.py
from django import template
from accounts.models import User

register = template.Library()

@register.inclusion_tag("show_users_list.html")
def show_users():
....users = User.objects.all()
....return {'users': users}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Создаем файл show_users_list.html в каталоге темплейтов,
содержимое:
{% for user in users %}
....{{ user }}
{% endfor %}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Теперь открываем какой-то свой шаблон, например base.html :)
и вставляем туда:
{% load give_me_users %} # подгружаем наш самопальный inclusion tag
{% show_users %}

Комментариев нет: