Django在渲染模板时给出Seg Fault,但可与pdb一起使用

时间:2018-10-19 00:31:29

标签: django python-3.x segmentation-fault

因此,我正在开发此Web应用程序,并且在我开始向其添加翻译功能之前,它一直运行良好。

现在,当我在模板中请求特定的URL时,它将在浏览器中显示ERR_EMPTY_RESPONSE,并且终端显示Seg Fault。

System check identified no issues (0 silenced).
October 18, 2018 - 21:25:00
Django version 2.1, using settings 'Inovatoxin.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
[18/Oct/2018 21:25:02] "GET / HTTP/1.1" 200 53144
Segmentation fault (core dumped)

导致这种情况的函数非常简单(我知道程序实际上到达了该视图):

def about(request):
    """
    Shows detail page for the project.
    """
    return render(request, 'Proteins/about.html', {})

所以我自然地虽然问题出在呈现模板中,但决定使用pdb对其进行调试。然后,我将上面的函数更改为此:

def about(request):
"""
Shows detail page for the project.
"""
import pdb; pdb.set_trace()
return render(request, 'Proteins/about.html', {})

但是,当我运行服务器时,错误消失了,并且页面在浏览器中正确渲染,甚至可以翻译

System check identified no issues (0 silenced).
October 18, 2018 - 21:20:25
Django version 2.1, using settings 'Inovatoxin.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
[18/Oct/2018 21:20:27] "GET / HTTP/1.1" 200 53144
> /home/gguidini/UnB/InovaToxin/Inovatoxin/Proteins/views.py(83)about()
-> return render(request, 'Proteins/about.html', {})
(Pdb) c
[18/Oct/2018 21:20:32] "GET /about/ HTTP/1.1" 200 15873

我完全不知道这里发生了什么。如何调试调试器消失的错误?到底是什么原因导致了Seg故障?

详细信息: 在Manjaro Linux中使用Django 2.1,Python 3.7.0。

编辑

(Django Telegram小组成员)建议我,它可能是文件损坏或我的环境有问题。

所以我重新编译了翻译消息,因为添加它们后出现了问题,并且问题仍然存在。

我也在另一台机器上尝试过,问题消失了。所以这是一个环境问题,但我不知道这是什么问题。

0 个答案:

没有答案