2010-12-04 32 views
3
Caught NoReverseMatch while rendering: Reverse for 'views.main' with arguments '()' and keyword arguments '{}' not found. 

我不明白什麼會導致錯誤。生產django服務器投擲「NoReverseMatch」,同時呈現,在開發作品

我的網址

urlpatterns = patterns('', 
url(r'^$', views.main), 

HTML模板

<a href="{% url views.main %}"> bla bla blah</a> 

在我views.py

return render_to_response("main.html", d, context_instance=RequestContext(request)) 

我檢查了我的TEMPLATE_DIRS,他們似乎是指向正確的目錄。

+1

你是否使用dev和prod中相同的django版本?什麼是您使用prod的網絡服務器? – 2010-12-04 20:49:53

+0

兩者都是DJango 1.2.3我的生產服務器是apache/django.wsgi – bdd 2010-12-04 20:56:04

回答

4

的可能性是,你有一個錯誤在其他地方,這是防止你的觀點從一個被導入 - 可能依賴缺少生產服務器上。反向URL功能通過導入所有視圖起作用,因此,如果出於任何原因無法導入其中任何視圖,則會看到NoReverseMatch錯誤。

1

嘗試:

url(r'^$', views.main, name="main-view") 

和模板:

<a href="{% url main-view %}"> bla bla blah</a> 
0

我碰到了同樣的事情,所以我試圖創建服務器的圖像,然後將服務器恢復到Paperino的方法該圖像,瞧,模板錯誤消失。我不知道爲什麼這樣,但它爲我做了,所以我沒有抱怨,花了大半天的時間試圖找出這一個:)

相關問題