在 django 模板 url 中正确导入但不起作用

In django template urls are imported correctly but don't work

我完全是 Django 的菜鸟,所以我似乎错过了一些明显的东西。

我正在使用 django userena 应用程序。按照官方文档v,我包括这样的userena url

from django.conf.urls import patterns, include, url 
from django.contrib import admin
urlpatterns = patterns('',
# Examples:
   url(r'^accounts/', include('userena.urls')),
   url(r'^admin/', include(admin.site.urls)),
   url(r'^$', 'mysite.views.home', name='home'),
   # url(r'^blog/', include('blog.urls')),
)

当我尝试在我的模板中使用某些 URL 时,它们可以正确加载,但无法正常工作。

        <div class="search_button" type="submit">
            Find
        </div>
        <div href="{% url 'userena_signin' %}" class="enter">
            Sign in
        </div>
        <div href="{% url 'userena_signup' %}" class="enter">
            Sign up
        </div>

当我加载页面时,我可以看到正确的 URL

        <div href="/accounts/signin/" class="enter">
            Sign in
        </div>
        <div href="/accounts/signup/" class="enter">
            Sign up
        </div>

但按下按钮既不会导致登录页面,也不会导致注册。 我错过了什么?

href 需要应用在 < a > markup 上。您正在 div.

上使用它

这是一个正确的版本:

<div class="search_button" type="submit">
    Find
</div>
<a href="{% url 'userena_signin' %}" class="enter">
    Sign in
</a>
<a href="{% url 'userena_signup' %}" class="enter">
    Sign up
</a>

还有 < div type="submit" > 通常适用于 < input /> 标记,但可能您有一些我不知道的代码修复。

似乎是纯粹的 HTML 问题,与此处正确使用的 Django 无关 ;)