django1.11 和 django2.2 启动错误

django1.11.11 启动错误

报错:

SyntaxError: Generator expression must be parenthesized (widgets.py, line 152)

由于django 1.11.17之前的版本和python3.7版本不兼容, 2.0版本以后的Django修复了这个问题
django与python版本兼容对照:https://blog.csdn.net/qq_28770757/article/details/123415364

解决方法1.找到对应路径下的widgets.py,将逗号删除即可
在这里插入图片描述
解决方法2.升级Django版本
升级的稳定的2.2LTS版本
django稳定版本更新时间:https://blog.csdn.net/qq_28770757/article/details/123415364

pip3 install Django==2.2 

django2.2启动报错

UnicodeDecodeError: ‘gbk’

  File "D:\python\django\venv\lib\site-packages\django\views\debug.py", line 332, in get_traceback_html
    t = DEBUG_ENGINE.from_string(fh.read())

UnicodeDecodeError: 'gbk' codec can't decode byte 0xa6 in position 9737: illegal multibyte sequence

报错显示该版本django的debug.py代码文件有编码读取问题。
解决:
根据提示定位到 python安装路径\lib\site-packages\django\views\debug.py文件的332 行处,将:

with Path(CURRENT_DIR, 'templates', 'technical_500.html').open() as fh:

修改为

with Path(CURRENT_DIR, 'templates', 'technical_500.html').open(encoding='utf-8') as fh:

在这里插入图片描述
也就是进行编码设置 ,重新启动页面即可正常显示。

AttributeError:decode

AttributeError: 'str' object has no attribute 'decode'

解决:
将django2.2源码中operations.py文件的146行的decode改为encode 在这里插入图片描述
参考:
https://www.cnblogs.com/chijintao/p/14947753.html
https://blog.csdn.net/qq_42839596/article/details/105945519

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值