将项目从Django 1.4 升级至Django 1.6.2 源码修改的三个步骤
来源:互联网 发布:匹配域名的正则表达式 编辑:程序博客网 时间:2024/04/28 11:43
年后上班第一天,看到Django最新的稳定版本已经升级到1.6.2。手上暂时没有其他的事,就尝试将原来在1.4下的代码迁移到1.6下。安装什么的就不说了,pip什么的自己玩去。完成升级以后,将以前的一个项目复制过来以后发现有些问题。总结一下,通过三个步骤修改源码,来避免错误。
1、指定session序列化方式
错误:
TypeError: set([]) is not JSON serializable
修改方法
在settings.py增加如下一行。
SESSION_SERIALIZER = 'django.contrib.sessions.serializers.PickleSerializer'
2、修改各模块中urls.py文件
错误:
ImportError: No module named defaults
修改方法:
由于在django1.6之后,django.conf.urls.defaults已经不再被支持。
from django.conf.urls.defaults import *
改为from django.conf.urls import patterns, url, include
批量修改方法:
sed -i's/from django.conf.urls.defaults import \*/from django.conf.urls import patterns, url, include/g' */urls.py
3、修改模板文件中url的书写方式(这项修改在1.5中也需要被修改)
错误:
NoReverseMatch at /
'url' requires a non-empty first argument. The syntax changed in Django 1.5, see the docs.
修改方法:
<a href="{% url common_business %}">
<a href="{% url 'common_business' %}">
批量修改方法:
sed -i -r -e "s#\{% url ([a-zA-Z0-9_.:-]+)#\{% url '\1'#g" templates/*/*.html
0 0
- 将项目从Django 1.4 升级至Django 1.6.2 源码修改的三个步骤
- 将项目从Django 1.4 升级至Django 1.6.2 源码修改的三个步骤
- 项目从Django 1.4 升级至1.6.2 源码修改的三个步骤
- Django 1.4 升级 Django 1.6
- django项目创建的步骤
- 将 Django 项目从 MySQL 迁移至 PostgreSQL
- Django笔记---创建Django项目的基本步骤
- 安装django的步骤:
- Django项目同步数据库步骤
- Django项目中创建前端Vue.js项目的步骤
- django 升级到1.13之后以前的项目报错
- django框架创建Python项目CRUDp的步骤
- django升级版本的安装
- django如何将修改好的新模型写入数据库
- CentOS7.2 nginx和uwsgi部署django项目步骤:
- django源码笔记-【2】
- django js的国际化步骤
- 新建django demo的步骤
- 模拟计算
- linux send 函数
- JsonCpp lib使用
- 前台
- 关于视频采集的网址
- 将项目从Django 1.4 升级至Django 1.6.2 源码修改的三个步骤
- 探测网络中存在的SQL Server实例的工具--Microsoft Assessment and Planning Toolkit
- 【IOS自定义工具类之缓存助手类】CacheHelper
- 《OpenGL超级宝典4》学习笔记——第四章(一)
- printf的格式控制的完整格式
- Makefile中include、-include、sinclude的区别
- hdu-1054-Strategic Game
- ssh(2)
- java 对象 实例变量 静态变量内存分配