Django1.8与2.0区别

1, print
Python3中,print从语句变为函数,所以所有的print语句需要改成print()

2,on_delete
在django 2中,models中on_delete=models.XXX不再是默认选项,需要显性指定

3, reverse
在新版本django中,这些包不再归于core,而是属于django.urls包,需要更改import路径

4, MIDDLEWARE
在新版本django中,中间件的key值由MIDDLEWARE_CLASSES变更为MIDDLEWARE

5, SessionAuthenticationMiddleware
在新版本django中SessionAuthenticationMiddleware这个中间件不需要了。

6, render_to_response
新版本django中render_to_response不建议使用,改为使用render函数。

7, 从unicodestr
新版本python后,django的models定义需要从unicode变更到_str

8,dict的’has_key’方法弃用
新版python中字典的has_key方法取消,建议用”str” in dict判断

9, Direct assignment to the forward side of a many-to-many set is prohibited
新版django中,orm多对多外健不再用=等赋值,改为set方法

new_list = [obj1, obj2, obj3]

e.related_set = new_list ===》 e.related_set.set([obj1, obj2, obj3])

10, Only byte strings can be passed to C code
在使用PyCryptodome作AES加密解密时,注意python3里decode和encode的使用

11,html输出时,byte如何转换成unicode?(网页输出是b’’)
str(b”,’utf8’)可以把BYTES转换成unicode;bytes(”,’utf8’)反向操作

12, orm migrate
在django升级之后,makemigration重作,migrate可能需要手工增加on_delete=models.XXX

13,python中virtualenv如何具有通用性?
如果安装好新版python3解释之后,通过更改active文件中的路径,可以实现拷贝目录通用.

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值