在我的base.html
中,我希望在用户出现在大多数网页上时呈现某些菜单,但是有一些菜单可以用来呈现,所以我有类似的东西:
{% if menu_context %}
<ul class="menu">...</ul>
{% endif %}
这很好用,我的大多数视图都有一个基类来添加这个变量。问题是在没有设置的页面上,我得到:
[2016-05-12 13:37:44,819 base] DEBUG: Exception while resolving variable 'menu_context' in template 'index.html'.
Traceback (most recent call last):
File "/.../env/lib/python2.7/site-packages/django/template/base.py", line 905, in _resolve_lookup
(bit, current)) # missing attribute
VariableDoesNotExist: Failed lookup for key [menu_context] in u'[...]'
有没有办法防止这种情况发生?
或者,是否有办法防止这些特定的日志语句。我的日志配置是:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'simple': {
'format': '[%(asctime)s %(module)s] %(levelname)s: %(message)s'
},
},
'handlers': {
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'simple',
},
'null': {
'level': 'DEBUG',
'class': 'logging.NullHandler',
},
},
'loggers': {
'django': {
'handlers': ['console'],
'level': 'DEBUG',
},
'django.db.backends': {
'handlers': ['null'], # Quiet by default!
'propagate': False,
'level': 'DEBUG',
},
'django.template.base': {
'handlers': ['null'], # Quiet by default!
'propagate': False,
'level': 'DEBUG',
},
},
}
......但这似乎并没有压制他们!