![](/img/trans.png)
[英]Google App Engine/WSGIApplication: How to check debug?
[英]how to set DEBUG value automatically in django on Google App Engine
我認為問題就說明了一切。
我想在Google App Engine上運行時設置DEBUG = False,但要在本地計算機上設為True。
(我沒有使用django-nonrel)
我做
app = webapp.WSGIApplication([
...
], debug = os.environ.get('SERVER_SOFTWARE', 'Dev').startswith('Dev'))
就像Thomas Orozco的代碼段一樣,但是如果未設置SERVER_SOFTWARE,則默認啟用調試功能。 僅當您碰巧在App Engine環境之外使用一些代碼時,才會發生這種情況,因此這是您希望如何將其默認設置的電話。
使用SERVER_SOFTWARE
環境變量。
按照GAE文檔中的指示:
SERVER_SOFTWARE
:在開發Web服務器中,此值為“ Development / XY”,其中“ XY”是運行時的版本。 在App Engine上運行時,此值為“ Google App Engine / XYZ”。
所以做:
import os
def get_gae_debug():
server = os.environ.get("SERVER_SOFTWARE")
if server is None:
return False # Unexpected, disable DEBUG.
software, version = server.split("/", 1)
return software == "Development"
DEBUG = get_gae_debug()
此語法的最新更新(放在您的應用settings.py中):
if os.getenv('SERVER_SOFTWARE', '').startswith('Google App Engine'):
DEBUG = False
else:
DEBUG = True
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.