【Python】Django

数据表更改

Django 1.7.x 和后来的版本:

Django 1.7.x 及之后的版本集成了 South 的功能,在修改models.py了后运行:html

python manage.py makemigrations
python manage.py migrate

这两行命令就会对咱们的models.py 进行检测,自动发现须要更改的,应用到数据库中去。python

Django 1.6.x 及之前:

在Django 1.6以及之前的版本中,咱们测试,当发现model要改,怎么办?sql

咱们修改了 models.py 以后,咱们运行:数据库

python manage.py syncdb

这句话只会将咱们在 models.py 中新加的类建立相应的表。django

对于原来有的,如今删除了的类,Django 会询问是否要删除数据库中已经存在的相关数据表。app

若是在原来的类上增长字段或者删除字段,能够参考这个命令:测试

python manage.py sql appname

给出的SQL语句,而后本身手动到数据库执行 SQL 。可是这样很是容易出错!code

Django 的第三方 app South 就是专门作数据库表结构自动迁移工做,Jacob Kaplan-Moss 曾作过一次调查,South 名列最受欢迎的第三方 app。事实上,它如今已经俨然成为 Django 事实上的数据库表迁移标准,不少第三方 app 都会带 South migrations 脚本,Django 1.7 中集成了 South 的功能。htm

参考:

Django 数据表更改get

相关文章
相关标签/搜索