在以往做iOS项目过程中,会有修改数据模型的经历,但是django中修改model之后,并不会自动应用,并且即使使用syncdb也不起作用。在网上看到有两种方法能够使对模型的修改得到应用:
1,手动修改数据库(当然我没有选择这种,也许日后有空会了解一下)
2,使用south,这个工具与django结合非常便捷,下面就简单记录一下学习到的south的用法
1、安装south
由于mac自带有easy-install,因此可以直接使用指令,这样就完成了south的安装工作
easy-install south
但是由于我系统的默认python没有修改成3.3.3,因此south自动的安装到了2.7上。于是使用第二种方法:在south官网下载安装包,并安装(具体见官网)
2、将south应用到Django项目中
前提:由于网上的教程也没怎么看明白,因此对于已有项目添加south的方法尝试了几次并没有成功,现只针对新创项目进行south的应用
(1)创建Django project,并新建app。
(2)编辑settings.py,将'south'、'app_name'添加到install_app中
(3)运行指令创建版本初始信息
python3 manage.py schemamigration app_name --initial
python3 manage.py migrate app_name
如此便完成了south配置到app中。
3、当models内容出现修改
python3 manage.py schemamigration app_name --auto
python3 manage.py migrate app_name