在编写代码时,我通常习惯于每分钟左右保存一次文件。有时会出现功能不完整的情况,我已经保存了,导致django开发服务器报如下错误:
Unhandled exception in thread started by ...
Traceback
..
..
File "/home/user/work/project/api/file.py", line 26
def update_something(self, )
^
SyntaxError: invalid syntax
现在,如果代码运行良好,django 开发服务器会在文件保存时自动重启并反射(reflect)更改。如何使 django 服务器从失败的错误状态中恢复并在后续文件保存时自动重启服务器?
目前,我必须停止终端中的 python manage.py runserver
命令,然后再次手动运行它。
我在 python 2.7.6
上使用 django 1.5.3
最佳答案
我为此使用了一个简单的 bash 脚本。这是您可以使用的单行代码:
$ while true; do python manage.py runserver; sleep 2; done
在尝试重新启动服务器之前将等待 2 秒。插入任何您认为合理的值。
我通常将它写成一个名为 runserver.sh
的 shell 脚本,将它放在我的项目根目录(与 manage.py 相同的目录)并将其添加到 gitignore。
while true; do
echo "Re-starting Django runserver"
python manage.py runserver
sleep 2
done
如果你这样做,记得chmod +x runserver.sh
,然后你可以执行它:
./runserver.sh
使用 Ctrl-c Ctrl-c
退出。
关于python - 在上一个错误后自动重启文件保存的 django 开发服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25199550/