當我在Django模板{{placeholder}}
中發生錯誤時,我沒有收到任何錯誤,只是輸出中我期待內容的空白處。有沒有辦法在發生這種情況時在日誌中查看某些內容,最好使用logging.warning
或logging.error
?Django:記錄模板錯誤
3
A
回答
2
Django提供的唯一處理TEMPLATE_STRING_IF_INVALID
中的未知上下文變量。如果你想要比這更好,你將不得不對模板引擎進行更深入的黑客攻擊。
0
在Django> = 1.8中,TEMPLATE_STRING_IF_INVALID
已棄用string_if_invalid
在settings.TEMPLATES
中。
如果你想要做的多一點,取決於DEBUG
消息從django.template
記錄器,你可以在django.template.base.FilterExpression.render()
愚弄下面的代碼:
if '%s' in string_if_invalid:
return string_if_invalid % self.var
隨着一類這樣的:
class InvalidString(object):
def __mod__(self, other):
log.error('Missing template variable: "%s"', other)
# ... do other interesting things ...
return u''
def __contains__(self, item):
return item == '%s'
並在settings.TEMPLATES
中設置string_if_invalid
:
TEMPLATES = [{
'OPTIONS': {'string_if_invalid': InvalidString()}
# ...
}]
0
是的,有。只需添加在您的settings.py
:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'console': {
'class': 'logging.StreamHandler',
},
},
'loggers': {
'django.template': {
'handlers': ['console'],
'level': os.getenv('DJANGO_LOG_LEVEL', 'DEBUG'),
},
},
}
由於roboslone stated,Django的1.9做了介紹吧。該片段與Configuring logging examples in Django docs的第二個片段非常相似。
相關問題
- 1. Django模板錯誤?
- 2. Django模板標籤錯誤
- 3. Django管理模板錯誤
- 4. Django模板語法錯誤
- 5. Django表單模板錯誤
- 6. Django的模板模塊導入錯誤
- 7. UI記錄模板
- 8. Django:引用模板標記的導入錯誤
- 9. Django的記錄更新錯誤
- 10. django-sentry不記錄警告,錯誤等
- 11. Django模板塊標記
- 12. Django模板ifequal標記
- 13. 解析錯誤消息給Django模板?
- 14. 使用sct的django模板錯誤
- 15. Django模板的錯誤優先級?
- 16. Django錯誤,而呈現模板IndexError
- 17. 一個簡單的Django模板錯誤
- 18. Django的「網址」模板標籤錯誤
- 19. Django的模板語法錯誤 - Chartit
- 20. 自定義django錯誤模板
- 21. 你如何找到Django模板錯誤?
- 22. Django-allauth加載錯誤的base.html模板
- 23. 模板在Django中不存在錯誤
- 24. Django模板目錄切換
- 25. Django的模板錯誤:模板u'base.html」不能擴展
- 26. 記錄錯誤
- 27. 從檢索到的記錄填充Django模板
- 28. Django如何通過模板修改數據庫記錄
- 29. 記錄在Django中間件中使用的模板
- 30. 在Django模板中顯示查詢集中的特定記錄
Ignacio,新版本的Django,仍然是唯一的出路嗎?謝謝 – glarrain 2012-05-04 14:51:18
'django.template'記錄器在Django 1.9中被導入https://docs.djangoproject.com/ja/1.9/topics/logging/#django-template – roboslone 2016-07-20 08:32:23