Django中常遇到的错误
这条是我今晚遇到的错误,下面的是借鉴别的大佬的经验的。
今晚遇到的错误是You're seeing this error because you have DEBUG = True in your Django settin
于是我就把setting配置文件中的DEBUG 改成了False 但是在我改完以后又出现了CommandError: You must set settings.ALLOWED_HOSTS if DEBUG is False.
这个问题于是就有了下面第四条的情况,有相同情况的小伙伴可以借鉴一下我的解决办法。
1.django向数据库中添加中文时报错
解决方案:创建数据库的时候设置编码格式
2.django的信号使用无法触发信号里的内容
解决方案:在django 1.7后,使用信号时候需要在应用配置类中的ready() 方法中连接。
所以我们需要配置先ready()
需要在以下两个地方写入配置
需要在项目的app.py,init.py两个文件中写入配置
3.django-admin.py:未找到命令
解决方案:将django的安装路径添加到环境变量中,
一般的安装路径在python目录下的\Lib\site-packages\Django-1.8-py2.7.egg\django\bin,
可能有不同,总之在python安装目录下找到django\bin即可。
添加完环境变量后记得重启命令提示符,否则还是提示错误。
4.当我把 DEBUG = True设为False的时候运行 python manage.py runserver 的时候
报错 : CommandError: You must set settings.ALLOWED_HOSTS if DEBUG is False.
解决方案: 在 setting.py 中添加 ALLOWED_HOSTS = [‘127.0.0.1‘, ‘localhost‘]
5.外部机器无法访问本站点
然后在settings里修改ALLOWED_HOSTS = [],
改为ALLOWED_HOSTS = [‘*’,]6.django解决跨域请求的问题
解决方案:添加中间件,安装django-cors-headers
配置settings.py文件,添加
MIDDLEWARE_CLASSES = (
…
‘corsheaders.middleware.CorsMiddleware’,
‘django.middleware.common.CommonMiddleware’, # 注意顺序
…
)
#跨域增加忽略
CORS_ALLOW_CREDENTIALS = True
CORS_ORIGIN_ALLOW_ALL = True
CORS_ORIGIN_WHITELIST = (
‘*’
)
原文链接:https://blog.csdn.net/Ajax177577/article/details/108721488