我有一个 Django 应用程序,它继续对{% url ... %}
模板标签大惊小怪。我之前已经修复过这个问题,但现在它让我SyntaxError
加载模板。
逆向工作
从相关的模板行开始:
<a href="{% url 'project-index' %}">
<img src="{{ STATIC_URL }}images/logo.png" alt="Logo">
</a>
我试图在views.py
中reverse()
的功能:
def index (request):
return render(request, "project/index.html", { "user" : request.user })
网址模式 ( urls.py
):
urlpatterns = patterns("project.views",
url(r'^$', "index", name="project-index"),
url(r'^login/?$', "login", name="project-login"),
url(r'^logout/?$', "logout", name="project-logout"),
)
主要应用程序包含网址 ( urls.py
):
urlpatterns = patterns('',
url('', include('project.urls')),
)
以下是回溯的要点。
回溯没有显示模板错误的确切行号,所以这是它给我的:
Error during template rendering
In template /Users/josh/Dropbox/Projects/app/sc/templates/layouts/base.html, error at line 47
"旧"网址标签不接受引号,但这将被弃用。在 Django <1.5 中使用 {% load url from future %}
。检查文档中的转发兼容性部分 https://docs.djangoproject.com/en/1.4/ref/templates/builtins/#url