因此,我正在开发此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小组成员)建议我,它可能是文件损坏或我的环境有问题。
所以我重新编译了翻译消息,因为添加它们后出现了问题,并且问题仍然存在。
我也在另一台机器上尝试过,问题消失了。所以这是一个环境问题,但我不知道这是什么问题。