2012-07-29 47 views
0

我得到了一個奇怪的heroku行爲。Heroku - Django提高了TemplateDoesNotExist(name)的例外,但是在請求的操作中不需要模板

我的代碼:

def generate(request, page_id): 
    page = get_object_or_404(Page, pk=page_id) 

    response = HttpResponse(page.content) 
    response['Content-Type'] = 'text/plain' 

    return response 

工程,我期望在開發,但在Heroku它拋出一個異常

GET test.herokuapp.com/generate/1 dyno=web.1 queue=0 wait=0ms service=908ms status=500 bytes=59 
2012-07-29T19:20:06+00:00 app[web.1]:  raise TemplateDoesNotExist(name) 
2012-07-29T19:20:06+00:00 app[web.1]: TemplateDoesNotExist: 500.html 

,並返回正確的輸出;)只有這一個動作是錯誤的。我使用的其他操作

return render_to_response('front/home.html') 

沒問題。什麼可能是錯的?

回答

1

該代碼拋出一個未處理的異常,除調試模式外,它使Django顯示一個使用模板500.html的錯誤頁面。你顯然沒有這樣的模板,所以異常處理程序引發了另一個異常,這是你所看到的。

+0

所以你建議我先得到一個異常,然後500(是的,它尚未定義)。是? – mrok 2012-07-29 20:56:09

+0

@ mrok:是的。你有一個異常,異常處理程序試圖從'500.html'模板提供頁面,然後引發你看到的異常。 – che 2012-07-29 21:31:21

+0

感謝您的幫助,我試圖找出導致此異常的原因。當我擺脫想法時,我創建了500.html模板 - 它有所幫助。 – mrok 2012-07-29 21:47:10

相關問題