我有一个网址.py包含多个具有相同名称的paramaters和regex但名称不同的url的文件。当我使用{%url'name'param%}从模板调用视图函数时,它调用网址.py不顾名字而归档。以下是网址.py公司名称:
urlpatterns = patterns('accountsearch.views',
url(r'^$', 'account_search', name='account_search'),
url(r'(?P<account_uuid>[a-zA-Z0-9\-]+)/(?P<user_uuid>[a-zA-Z0-9\-]+)/$','reset_password',name='reset_password'),
url(r'(?P<account_uuid>[a-zA-Z0-9\-]+)/(?P<user_uuid>[a-zA-Z0-9\-]+)/$','reset_securityquestions',name='reset_securityquestions'),
我正在尝试使用从模板调用reset\u securityquestions
^{pr2}$但是,如果我更改URL在网址.py为此:
urlpatterns = patterns('accountsearch.views',
url(r'^$', 'account_search', name='account_search'),
url(r'(?P<account_uuid>[a-zA-Z0-9\-]+)/(?P<user_uuid>[a-zA-Z0-9\-]+)/$', 'reset_securityquestions',
name='reset_securityquestions'),
url(r'(?P<account_uuid>[a-zA-Z0-9\-]+)/(?P<user_uuid>[a-zA-Z0-9\-]+)/$', 'reset_password', name='reset_password'),
)
并使用
{% url 'reset_password' account.uuid user.uuid %}
它调用reset_security_questions函数。我哪里出错了?在
我不明白如果Django和Django的URL模式完全相同,那么他们怎么会知道要使用哪个URL。当请求进来时,Django所要做的就是URL本身,它将始终尝试按顺序匹配这些URL。在切换模式下,您会发现reset\u password视图现在不起作用。在
你需要给Django一些区分它们的方法。通常会使用一些文字作为前缀或后缀,例如:
Django总是以第一个匹配的url模式为基础,因此将url重写为:
相关问题 更多 >
编程相关推荐