我想知道最简单的方法:
我有一个名为Student的模型,在数据库中有许多学生具有许多属性,例如:
名称类型
id int(11)
varchar(200)
性静脉曲张(1)
int状态(11)
创建日期时间
我想要做的是将模型重命名为客户,并将"status“字段改为Charfield (varchar)而不是整数。我得把数据库里的数据原封不动。
发布于 2012-05-15 20:04:36
向南的世界敞开你自己。South是Django项目的智能模式和数据迁移。
AFter安装并将'south‘放入您的django设置installed_apps列表中,您希望运行2个命令。
在应用迁移之后,您可以通过运行python manage.py迁移my_app_name -列表来检查迁移的状态。使用a*的迁移已被应用。
发布于 2012-05-15 20:08:50
创建表客户( id int(11), 名称varchar(200), 性静脉曲张(1) 状态varchar(20)创建日期时间); 插入到客户选择id,姓名,性别,铸造(身份作为字符),由学生创建;
然后,当然,编辑你的django匹配。
发布于 2012-05-15 21:48:10
如果没有其他模型引用“学生”,那么您可以这样做:
但是,如果您有引用旧表的其他模型,使用外键或多个关系,那么上面的内容将无法工作,因为这些其他模型的数据库模式中可能有对旧表的引用。如果这是你的案子,你可以试试这个:
"model": "yourapp.student"替换为"model": "yourapp.costumer"。您可能需要做其他替换,这取决于您的模型和它们之间的关系。对于未来,请看@mangobug的答案,然后开始使用django-south。
https://stackoverflow.com/questions/10607923
复制相似问题