【问题标题】:Heroku - Django raise TemplateDoesNotExist(name) exception, but template is not needed in requested actionHeroku - Django 引发 TemplateDoesNotExist(name) 异常,但在请求的操作中不需要模板
【发布时间】:2023-04-06 23:32:01
【问题描述】:

我有一个奇怪的heroku行为。

我的代码:

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 

在 dev 上可以正常工作,但在 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')

没问题。有什么问题?

【问题讨论】:

    标签: django templates heroku


    【解决方案1】:

    该代码抛出一个未处理的异常,在调试模式之外,这使 Django 显示一个使用模板 500.html 的错误页面。您显然没有这样的模板,因此异常处理程序引发了另一个异常,这就是您所看到的。

    【讨论】:

    • 所以你建议我先得到一个异常,然后是 500(是的,它还没有定义)。是吗?
    • @mrok:没错。您遇到了异常,异常处理程序尝试从 500.html 模板提供页面,然后引发了您看到的异常。
    • 感谢您的帮助,我试图找出导致此异常的原因。当我摆脱想法时,我创建了 500.html 模板——它很有帮助。
    猜你喜欢
    • 2012-07-17
    • 2012-05-26
    • 2012-07-03
    • 2011-01-10
    • 2014-10-25
    • 2011-05-19
    • 1970-01-01
    • 2015-06-13
    • 1970-01-01
    相关资源
    最近更新 更多