Maison >développement back-end >Tutoriel Python >python django | models
学习大牛的网站:
models类修改后数据库也应同样更新,但是syncdb命令仅仅创建数据库里的表,并不对数据模型进行同步修改或者删除。此时需要手动在数据库里进行相应的修改活在删除之前表运行syncdb重新创建。
手动修改过程:
1. sudo python manage.py sqlall depotapp 查看表的所有字段
2. sudo python manage.py dbshell 使用django提供的dbshell增加字段
sqlite> begin;
sqlite> alter table depotapp_product add column date_available data not null default 0;
sqlite> commit;
{退出时ctrl+d}{删除字段-->drop column;删除模型-->drop table;删除多对多关联-->drop table(自动生成的关联表)}
3. python manage.py shell 验证数据库
In [1]: from depotapp.models import Product
In [2]: Product.objects.all()
没报错则ok