Шаблон тега "is_logged_in" не отображается - PullRequest
2 голосов
/ 30 октября 2008

по какой-то причине теги-шаблоны не отображаются в шаблонах для администратора django.

с этим фрагментом из: http://docs.djangoproject.com/en/dev/ref/templates/api/?from=olddocs#shortcut-for-simple-tags

{% if is_logged_in %}Thanks for logging in!{% else %}Please log in.{% endif %}

при размещении в admin index.html, если пользователь вошел в систему, отображается «Пожалуйста, войдите»

То же самое с тегами-шаблонами, не могу показать приложения, ничего сделать. ошибки нет / они не обрабатываются либо

Ответы [ 2 ]

5 голосов
/ 30 октября 2008

Это только пример, переменная is_logged_in фактически не определена ни в одном шаблоне, если вы не поместите ее в контекст.

Если вы добавили эту строку и получили Please log in., это означает, что тег рендерится. Если он не проходит if и переходит к else, он явно запускается. Вам нужно найти что-то в шаблоне, который вы действительно можете использовать для случая if. Я не перепутал шаблоны администрирования в newforms-admin, но в зависимости от того, используют ли они RequestContext и от того, какие ContextProcessors вы включили, вы можете сказать {% if not request.user.is_anonymous %} ... или что-то подобное.

0 голосов
/ 22 июня 2011

Я только что попробовал это:

request.user.is_authenticated

Прямо в шаблоне и просто сработало как хотелось!

...