Django NoReverseMatch wrong number of arguments
<p>I am getting a NoReverseMatch error after having added a new argument to one of my URLs. Initially, the URL in <code>urlpatterns</code> had been</p>

<pre><code>url(r'^(?P&lt;myID&gt;[0-9]+)/go/(?P&lt;otherID&gt;[0-9]+)/$', views.go, name='go')
</code></pre>

<p>and this worked. I changed it to </p>

<pre><code>url(r'^(?P&lt;myID&gt;[0-9]+)/go/(?P&lt;listID&gt;[0-9]+)/(?P&lt;otherID&gt;[0-9]+)/$', views.go, name='go')
</code></pre>

<p>and updated the function <code>go</code> in views.py to accept another argument (<code>def go(request,myID,listID,otherID):#...</code>). The new argument is not being recognized. When I try to go to <code>my_app/18/go/14/12/</code> (for example) from my local server it gives the error </p>

<pre><code>Reverse for 'go' with arguments '(18, 12)' and keyword arguments '{}'
not found. 1 pattern(s) tried:
['frackr/(?P&lt;myID&gt;[0-9]+)/go/(?P&lt;listID&gt;[0-9]+)/(?P&lt;otherID&gt;[0-9]+)/$']
</code></pre>

<p>So it seems that it does not recognize the <code>listID</code> argument. However, the debugging message says that one of the local variables in the view function is <code>listID</code> with the value of <code>u'14'</code>. So the problem does not seem to be coming from interpreting the URL. </p>

<p>I have looked through tons of questions already to try to figure this out, but no one seems to have the same problem. And I realize this is probably a beginner's mistake, but any help would be greatly appreciated.</p>

<p>Post a complete stack trace of error so that it can be known which file is the cause for issue.</p>

<p>Check your templates. There is a possibility that django is trying to call the url in templates using only two args. Try calling url in templates using namespaces and names as given below.</p>

<pre><code>{% url 'go' arg1 arg2 arg3 %}
</code></pre>

python django