擅长:python、mysql、java
<p>我的猜测是您还有另一个<code>urlpattern</code>作为<code>/anuncios/start/</code>(不是当前的<code>urls.py</code>),并且<code>start</code>方法有两个参数。如果是这样,并且它的优先级高于当前使用regex的urlpattern,则会抛出错误。在</p>
<p>因此,要么删除该urlpattern,要么在您的<code>def anuncios_search()</code>中使用额外的代码处理其解析逻辑。在</p>
<p><strong><em>编辑</em></strong></p>
<p>要调试这个,请简化代码。在</p>
<ol>
<li>检查如果将<code>anuncios_search</code>方法改为<code>render</code>一个文本字符串,会发生什么情况。如果它仍然抛出相同的错误,我们知道问题出在url解析上。
<ul>
<li>您可能没有自己定义<code>urlpattern</code>,但这可能是您使用的某个插件来实现这一点。在这种情况下,如果您正在使用插件,请尝试逐个删除它们(如果可能)。在</li>
</ul></li>
<li>如果没有,那么在<code>anuncios_search</code>方法的第一行使用<code>import pdb; pdb.set_trace()</code>。再提出一次请求,你就可以找到确切的例外地点了。在</li>
</ol>
<p><strong><em>编辑2-更多调查</em></strong></p>
<p>我不确定您是否正在使用<a href="https://github.com/django/django/blob/stable/1.5.x/django/core/handlers/base.py#L114" rel="nofollow">Django 1.5</a>,但从其源代码来看,很明显视图中引发的异常通过中间件传递以获取响应,如果不是,则会引发相应的错误。在</p>
<p>在您的例子中,您使用的是代码</p>
<pre><code>current_filters= {'current_category':None,'ads':ads_paginator(request,ads)}
</code></pre>
<p>我认为这可能是引发未处理异常的合理语句。在</p>