获得collectstatic error
后,我运行了命令heroku run python ./manage.py collectstatic --noinput
,我得到了这个追溯:
Traceback (most recent call last):
File "./manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/app/.heroku/python/lib/python2.7/site-packages/django/core/management/__init__.py", line 385, in execute_from_command_line
utility.execute()
File "/app/.heroku/python/lib/python2.7/site-packages/django/core/management/__init__.py", line 354, in execute
django.setup()
File "/app/.heroku/python/lib/python2.7/site-packages/django/__init__.py", line 20, in setup
configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
File "/app/.heroku/python/lib/python2.7/site-packages/django/utils/log.py", line 87, in configure_logging
logging_config_func(logging_settings)
File "/app/.heroku/python/lib/python2.7/logging/config.py", line 794, in dictConfig
dictConfigClass(config).configure()
File "/app/.heroku/python/lib/python2.7/logging/config.py", line 627, in configure
'%r: %s' % (name, e))
ValueError: Unable to configure logger 'django_request': Unable to add handler 'request_handler': 'request_handler'
这是我的manage.py
文件:
#!/usr/bin/env python
import os
import sys
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "django_test.settings")
from django.core.management import execute_from_command_line
execute_from_command_line(sys.argv)
我的Procfile
:
web: gunicorn django_test.wsgi
LOGGING
的{{1}}部分:
settings.py
在LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'mail_admins':{
'level': 'ERROR',
'class': 'django.utils.log.AdminEmailHandler',
'filters': ['require_debug_false'],
}
},
'loggers': {
'django.request': {
'handlers': ['mail_admins'],
'level': 'ERROR',
'propogate': True,
},
}
}
中,我尝试将Procfile
替换为.wsgi
,但我只生成.app
,我在线研究了我的错误,但我仍然不知道为什么我获得ImportError
或如何解决它。另外,我想知道我是否需要Apache服务器才能使我的Django网站能够工作或Gunicorn是否足够?我很感激你能给我的任何帮助。谢谢。
答案 0 :(得分:1)
我不知道这是否解释了“无法添加处理程序”错误消息,但您拼写错误propagate
。我之前犯过相同的拼写错误,至少花了一个小时才发现问题。