簡體   English   中英

Django-重定向時,URL與任何模式都不匹配

[英]Django - url is not matching any pattern when being redirected

我正在django項目上工作,我有一個html網頁,並且從該網頁中我要傳遞一個ID並通過該ID更新記錄。 我有url設置和html頁面url重定向。 我通過了url中需要的內容,但是出現了模式匹配錯誤。 我嘗試了所有操作,由於某種原因,它不起作用。 有誰知道正在發生什么,或者可以幫助我找出導致此錯誤的原因。 我將附上以下所有信息:

這是網址鏈接:

url(r'^(?P<source_id>[\w+][0-9]+)/default_source/$', views.setDefaultSource, name='default_source'),

這是html文件:

<p>{{account.user.username}}, {{ account.source_name }}, {{ account.source_id }},
{{ account.status }}
<a href="{% url 'default_source' account.source_id %}">Make Default</a>

這是views.py:

def setDefaultSource(request, source_id):
    currentUser = loggedInUser(request)
    currentSource = Dwolla.object.get(source_id = source_id)

    update_source = currentSource
    update_source.status = 2
    update_source.save()

    return redirect('home_page')

這是我得到的錯誤:

NoReverseMatch at /linked_accounts/
Reverse for 'default_source' with arguments '('https://api-sandbox.dwolla.com/funding-sources/3021030d-0175-41f1-8bce-4625b8eae0fc',)' not found. 1 pattern(s) tried: ['(?P<source_id>[\\w+][0-9]+)/default_source/$']

似乎您的正則表達式表達式與您的source_id不匹配:

[\w+][0-9]+

在此處輸入圖片說明

如果3021030d-0175-41f1-8bce-4625b8eae0fc是您的source_id的樣子,請嘗試:

[\w+-]+

或更復雜的正則表達式表達式。

只需將您的網址格式更改為

url(r'^(?P<source_id>[\w-]+)/default_source/$', views.setDefaultSource, name='default_source'),

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM