出于某种原因,模板标签不会在django admin的模板中呈现。
使用以下代码段: 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时,如果用户已登录,则显示“请登录”
与templatetags相同,无法获取任何应用程序以显示,做任何事情。没有错误/它们也没有得到处理
答案 0 :(得分:5)
这只是一个例子,is_logged_in
变量实际上并没有在任何模板中定义,除非你把它放在上下文中。
如果您添加了该行并获得Please log in.
,则表示该标记正在呈现。如果if
失败并转到else
,它显然正在运行。但是,您需要在模板中找到可以用于if
案例的内容。我没有搞乱newforms-admin中的管理模板,但是根据它们是否使用RequestContext以及你启用了哪些ContextProcessors - 你可能会说{% if not request.user.is_anonymous %} ...
或类似的东西。
答案 1 :(得分:0)
我刚试过这个:
request.user.is_authenticated
正好在模板中,只是按照我们的意愿工作!