【发布时间】:2018-02-12 23:09:46
【问题描述】:
Django 的反向函数显然无法解析我的 URL。
这是我的urls.py 包含网址
urlpatterns=[
url(r'^login/$', views.loginview, name='login'),
url(r'logout/$', views.logoutview, name='logout'),
url(r'signup/$', views.signup, name='signup'),
url(r'^stocks/(?P<pk>[0-9])/$', views.successful_login, name='successful_login'),
url(r'^buystocks/(?P<pk>[0-9])/(?P<sn>[A-Z])/buy/$', views.buy, name='buy')
]
下面是包含重定向到 URL 的 sn-p。
<form method="post" action="{% url 'buy' pk=user.id sn=stock.stock_name %}" >
回溯如下
NoReverseMatch at /stocks/5/
Reverse for 'buy' with keyword arguments '{u'pk': 5, u'sn': u'HDFC'}' not found. 1 pattern(s) tried: ['buystocks/(?P<pk>[0-9])/(?P<sn>[A-Z])/buy/$']
【问题讨论】:
-
您的
pks 在 0-9 范围内吗?您当前的正则表达式不支持 9 以上的数字,您应该在[0-9]之后添加+ -
是的,它们目前在 0-9 范围内,但我仍然会添加
+。感谢您指出这一点。
标签: django django-templates django-urls