无法识别命名url

2024-10-02 22:27:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在模板中使用一个命名的url,但它不起作用。我已经尝试将模板中调用的url的名称更改为'progress',这是urls.py中的另一个url conf。而且效果很好。但是当我把它改成UserSair时,它就崩溃了。你知道吗

我得到这个错误:

NoReverseMatch at /
Reverse for 'UserSair' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []

在此行中:

<a href="{% url "UserSair" %}" class="btn btn-default btn-flat">Sair</a>

这是我的urls.py

from django.conf.urls import patterns, include, url
from django.core.urlresolvers import reverse
from django.contrib.sitemaps import Sitemap, FlatPageSitemap


sitemaps = {
  'site': Sitemap,
  'flatpages': FlatPageSitemap,
}



# Uncomment the next two lines to enable the admin:
from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
    # Examples:
    # url(r'^$', 'quiz.views.home', name='home'),
    # url(r'^quiz/', include('quiz.foo.urls')),


    # Uncomment the next line to enable the admin:
    url(r'^admin/', include(admin.site.urls)),

    ####################
    # quiz base url    
    url(r'^$', 'simulado.views.index'),

    # quiz category list    
    url(r'^category/(?P<slug>[^\.]+)', 'simulado.views.view_category', name='view_quiz_category'),

    #django social auth
    url(r'', include('social_auth.urls')),

    #notificacoes pagseguro
    url(r'^notif$', 'simulado.views.notificacao', name = "notif"),



    #  cart 
    url(r'^carrinho$', 'simulado.views.carrinho'),
    url(r'^buyItem$', 'simulado.views.buyItem', name = "buyItem"),


    #  obrigado, return from pagseguro 
    url(r'^obrigado$', 'simulado.views.obrigado'),



    #sitemaps
    url(r'^sitemap\.xml$', 'django.contrib.sitemaps.views.sitemap',{'sitemaps': sitemaps}, name='django.contrib.sitemaps.views.sitemap'),

    #  progress 
    url(r'^progress/$', 'simulado.views.progress', name = "progress"),
    url(r'^progress$', 'simulado.views.progress', name = "progress"),

    # logout
    url(r'^UserSair/$', 'simulado.views.sair', name = "UserSair"),
    url(r'^UserSair$', 'simulado.views.sair', name = "UserSair"),


    #  passes variable 'quiz_name' to quiz_take view
    url(r'^(?P<quiz_name>[\w-]+)/$',
        'simulado.views.quiz_take'),  #  quiz/

    url(r'^(?P<quiz_name>[\w-]+)$/',
        'simulado.views.quiz_take'),  #  quiz

    url(r'^(?P<quiz_name>[\w-]+)/take/$',
        'simulado.views.quiz_take'),  #  quiz/take/

    url(r'^(?P<quiz_name>[\w-]+)take$',
        'simulado.views.quiz_take'),  #  quiz/take

)


urlpatterns += patterns("",
  url(r'^sitemap\.xml$', 
      'django.contrib.sitemaps.views.sitemap', 
      {'sitemaps': sitemaps}
  ),
)

这是一种观点:

def sair(request):
    return render(request, 'quiz_index.html')

Tags: djangonamefromurladmincontribquizurls