【发布时间】:2013-10-26 01:15:25
【问题描述】:
我在输入 localhost:8000/admin/ 时遇到了这个问题。
`TemplateSyntaxError:无法解析剩余部分:来自“admin:password_change”的“:password_change”。 'url' 的语法在 Django 1.5 中发生了变化,请参阅文档。
这是我settings.py的一部分:
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'grappelli',
'filebrowser',
# Uncomment the next line to enable the admin:
'django.contrib.admin',
# Uncomment the next line to enable admin documentation:
#'django.contrib.admindocs',
'tinymce',
'sorl.thumbnail',
'south',
'django_facebook',
'djcelery',
'devserver',
'main',
)
AUTH_USER_MODEL = 'django_facebook.FacebookCustomUser'
AUTHENTICATION_BACKENDS = (
'django_facebook.auth_backends.FacebookBackend',
'django.contrib.auth.backends.ModelBackend',
# Uncomment the following to make Django tests pass:
'django.contrib.auth.backends.ModelBackend',
)
我是不是做错了什么?
PS:这是我的完整回溯 https://gist.github.com/anonymous/e8c1359d384df7a6b405
编辑:
我正在根据请求粘贴 grep 的输出:
$ ack-grep --type=python -r ':password_change' .
lib/python2.7/site-packages/django/contrib/admin/sites.py
264:url = reverse('admin:password_change_done', current_app=self.name)
lib/python2.7/site-packages/grappelli/dashboard/dashboards.py
147:reverse('%s:password_change' % site_name)],
$ ack-grep --type=html -r ':password_change' .
lib/python2.7/site-packages/django/contrib/admin/templates/admin/base.html
36:<a href="{% url 'admin:password_change' %}">{% trans 'Change password' %}</a> /
lib/python2.7/site-packages/grappelli/templates/admin/includes_grappelli/header.html
12:{% url admin:password_change as password_change_url %}
【问题讨论】:
-
你能在文件夹范围内搜索
:password_change并显示包含代码的模板吗? -
好的,谢谢。我刚刚粘贴了输出。
-
我刚刚遇到了这个问题,因为模板有像
{% if thing in ['literal', 'list', 'of', 'elements'] %}这样的代码,它在 jinja 中有效,但不适用于 Django 模板。 -
当你写
{{ url ..而不是{% url ..时也会发生这种情况
标签: django django-admin django-facebook