如何判断我的Django应用程序是否正在开发服务器上运行?
如何判断我的Django应用程序是否正在开发服务器上运行?
如何确定我的应用程序是在开发服务器上运行还是不运行? 我想我可以检查settings.DEBUG
的值并假设如果DEBUG
是True
,那么它就在开发服务器上运行了,但我更愿意确定而不是依赖于惯例。
admin 更改状态以发布 2023年5月22日
server = request.META.get('wsgi.file_wrapper', None) if server is not None and server.__module__ == 'django.core.servers.basehttp': print('inside dev')
当然,wsgi.file_wrapper
可能被设置在META上,而且在另一个服务器环境中,恰好有一个名称为django.core.servers.basehttp
的模块的类,但我希望这能够给你提供帮助。
顺便说一句,我发现这个问题是通过在开发服务器上运行一个语法无效的模板而发现的,并在Traceback
和Request information
部分寻找有趣的东西,所以我只是编辑我的答案来证实Nate的想法。