1、最明显的问题当然是Settings设置中关于模板的设置数据结构发生变化,这个就不细说了,你开个Django的1.8的新项目就知道怎么改了

2、migrations问题,这个问题是1.8最主要的修改,在代码从1.7升级到1.8之前要保证models定义和DB Schema的版本一致,然后代码升级到1.8以后,生成一次就Ok了。剩下的就以这个为基版本了。

3、models的变化,1.8以后时间字段的auto_now_add和auto_now不能再重复出现了,应该说这本身是一个改进,不过这个改进需要修改不少models定义

4、auth_user的字段定义发生变化,这个变化导致1.8的User.objects.create_user函数实现发生变化,而这个新的函数是与之前auth_user表定义不兼容的,目前发现的修改就是last_login的非空约束被取消,用户第一次建立时,这个字段为空,解决办法:到数据库里把以前的那个非空约束取消掉,这个改动是符合业务逻辑,但是对于兼容性基本算是不小的坑。

5、JsonResponse,这个改动可以把之前的JSON响应方法都改掉,当然这个改动不是非改不可,没事干了,改一下,对代码来讲不错。其中注意,只要传入的不是字典,什么列表、集合、其它基本类型之类的,都要再加一个safe=False的传参。

目前发现就这些,做了这种版本升级以后,要多看看后台日志。及时解决发生的问题。一直想写一个从1.5开始所有新版本的新特性总结,可惜人太懒,下班以后懒得写长文---译长文是个比较耗时间的事情。

Django升级1.8的一些问题的更多相关文章

  1. django升级2.1python升级3.7时出现的错误:"trying to load '%s': %s" % (entry[1], e) django.template.library.InvalidTemplateLibrary:

    django升级2.1python升级3.7时出现如下的错误: "trying to load '%s': %s" % (entry[1], e) django.template. ...

  2. Django升级1.6之后出现“Bad Request (400)”错误的解决方案

    Django从1.4升级到1.6之后发现之前的网站都无法访问了,会出现“Bad Request (400)”的错误,搜了半天终于找到了解决办法. 解决方法很简单: 在settings.py里面添加: ...

  3. 关于Django升级的一些联想

    刚刚阅读完django1.11的release note,从django1.4一直用到django1.11,以及即将到来的大版本django2.0,Django的版本升级策略和国内的技术现状对比称得上 ...

  4. Django升级1.9.6出现的中文本地化bug

    Error日志: Error opening file for reading: Permission denied ERROR Internal Server Error: / Traceback  ...

  5. Django升级到1.10,MEDIA_ROOT发生TypeError错误

    Getting error: “TypeError: view must be a callable or a list/tuple in the case of include().” when r ...

  6. 【新人填坑008】django升级2.x后报'WSGIRequest' object has no attribute 'session',

    1.X 到2.x后中间件定义的名字也有所不同 改一下就好了 在setting文件中将原先的 MIDDLEWARE_CLASS 改成MIDDLEWARE 如果还运行不成功  注释掉标白线的那一行 删掉也 ...

  7. 利用django创建一个投票网站(二)

    创建你的第一个 Django 项目, 第二部分 这一篇从第一部分(zh)结尾的地方继续讲起.本节我们将继续写 Web 投票应用,并主要关注 Django 提供的自动生成的管理页面(admin site ...

  8. 利用django创建一个投票网站(一)

    这是教程的原始链接:http://django-intro-zh.readthedocs.io/zh_CN/latest/part1/ 创建你的第一个 Django 项目, 第一部分 来跟着实际项目学 ...

  9. Django简介

    Django, 应该读作jan go,读音演示 D是不发音的---发音的---音的---的--- django简介:urls.py网址入口,关联到views.py views.py处理用户发出的请求, ...

随机推荐

  1. Andoird Crash的跟踪方法,使用腾讯Bugly来捕捉一些疑难杂症,让我们APP稳定上线

    Andoird Crash的跟踪方法,使用腾讯Bugly来捕捉一些疑难杂症,让我们APP稳定上线 我们在开发中常常会注意到一些Crash,这正是很头疼的,而且Crash会带来很多意想不到的状态,很恶心 ...

  2. PA 项目创建任务

    ---- 创建任务 DECLARE p_project_id NUMBER := 155233; p_task_number VARCHAR2(240) := 'CXYTEST0001'; p_tas ...

  3. 四大组件之ContentProvider小结

    总结提高,与君共勉 1.什么是Content Provider 内容提供器( Content Provider)主要用于在不同的应用程序之间实现数据共享的功能,提供了一套完整的机制,允许一个程序访问另 ...

  4. Lambda的使用与实战

    简介 (下面的简介也可以自己百度,一般进来的都是想知道怎么去用,所以这里主要也是重点在用法与实战上) Lambda表达式是Java SE 8中一个重要的新特性.lambda表达式允许你通过表达式来代替 ...

  5. 索引构建情况分析、mongoDB安全(四)

    索引好处:加快索引相关的查询 坏处:增加磁盘空间消耗,降低写入性能 评判当前索引构建情况:     1. mongostat工具介绍     2. profile集合介绍     3. 日志介绍   ...

  6. iOS 动画总结—UIView动画

    1.概述 UIKit直接将动画集成到UIView类中,实现简单动画的创建过程.UIView类定义了几个内在支持动画的属性声明,当这些属性发生改变时,视图为其变化过程提供内建的动画支持. 执行动画所需要 ...

  7. OC语言(二)

    十.匿名对象 即不将对象赋给指针,而是直接使用 注意new对象的时候要用[ ]嵌套 例如:[[Car new] run]; 十一.枚举书写规范 注意空格 //注视 typedef enum { } X ...

  8. Cocos2D的随机数生成函数

    有很多种方法生成随机数.但是只有arc4random函数生成的最接近于"真随机(truly random)"数.(而且不需要种子) 其变体函数arc4random_uniform生 ...

  9. Make3D Convert your image into 3d model

    Compiling and Running Make3D on your own computer source: http://make3d.cs.cornell.edu/code_linux.ht ...

  10. Java-ServletContextAttributeListener

    /** Implementations of this interface receive notifications of ** changes to the attribute list on t ...