首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >模式变更Django,Mezzanine,南部

模式变更Django,Mezzanine,南部
EN

Stack Overflow用户
提问于 2014-04-04 14:45:30
回答 1查看 661关注 0票数 0

我的模特是

代码语言:javascript
复制
class Author(Page):
    dob = models.DateField("Date of birth")

我移除道布字段并更新模型如下:

代码语言:javascript
复制
class Author(Page):
    name = models.CharField(max_length = 250)
    email = models.EmailField()

然后输入两个命令:

代码语言:javascript
复制
python manage.py schemamigration project_name 001_initial--add-field Author.name, Author.email 

然后这个命令

代码语言:javascript
复制
python manage.py migrate project_name

您可以看到附加图像:上面的这些命令不允许我保存模型中的更改。

需要你的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-04 15:08:52

解决方案:

1)在添加新字段之前,先转到命令提示符,然后移动到项目或应用程序所在的目录。现在,在models.py文件python manage.py schemamigration your_project_or_app_name --initial中添加字段之前编写此命令

2)现在编写这个命令python manage.py migrate your_project_or_app_name --fake 0001 (或者它返回的任何迁移号- 0001是迁移号)将南方数据库设置为该状态(已经创建的表)。

3)现在转到models.py文件,在models.py文件中添加新字段,然后在cmd中运行以下命令python manage schemamigration your_project_or_app_name --auto

4)保存更改的最后一步运行最后一次迁移命令python manage.py migrate your_project_or_app_name

解决方案参考:Yuji 'Tomita' Tomita提供的Django & South: Adding new field but DatabaseError occurs "table already exists"

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22865937

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档