在urls.py中使用多个子弹

时间:2018-12-09 08:18:47

标签: python django python-3.x

我正在尝试在URL中使用两个子段,但我不断得到:

Reverse for 'tithe' with arguments '(2018, 'February')' not found. 
1 pattern(s) tried: ['tithe/(?P<year>[0-9]{4})-(?P<month>[\\w-])/$']

urls.py

from django.contrib import admin
from django.urls import path,include,re_path
from django.conf.urls import url
from tithe import views
from django.views.generic import RedirectView
from django.conf import settings 

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', RedirectView.as_view(pattern_name="account_login"), name="index"),
    path('accounts/', include('allauth.urls')),
    path('dashboard', views.Dashboard.as_view(), name='dashboard'),
    url(r'^tithe/(?P<year>[0-9]{4})/(?P<month>[\w-]+)/$', views.TitheView.as_view(), name='tithe'),
]

dashboard.html

<a href="{% url 'tithe' currentYear realMonth %}" class="waves-effect"><i class="zmdi zmdi-format-underlined"></i> <span> Tithe </span> </a>

1 个答案:

答案 0 :(得分:0)

您可以像这样更改网址格式:

urlpatterns = [
 path('admin/', admin.site.urls),
 path('', RedirectView.as_view(pattern_name="account_login"), name="index"),
 path('accounts/', include('allauth.urls')),
 path('dashboard', views.Dashboard.as_view(), name='dashboard'),
 path('tithe/2018/February/', views.TitheView.as_view()),
 url(r'^tithe/(?P<year>[0-9]{4})/(?P<month>[\w-]+)/$', views.TitheView.as_view(), name='tithe'),