相关疑难解决方法(0)

Django迁移错误:您无法更改M2M字段或从M2M字段更改,或在M2M字段上添加或删除

我正在尝试将M2M字段修改为ForeignKey字段.命令validate显示没有问题,当我运行syncdb时:

ValueError: Cannot alter field xxx into yyy they are not compatible types (you cannot alter to or from M2M fields, or add or remove through= on M2M fields)
Run Code Online (Sandbox Code Playgroud)

所以我无法进行迁移.

class InstituteStaff(Person):
    user                 = models.OneToOneField(User, blank=True, null=True)
    investigation_area   = models.ManyToManyField(InvestigationArea, blank=True,)
    investigation_group  = models.ManyToManyField(InvestigationGroup, blank=True)
    council_group        = models.ForeignKey(CouncilGroup, null=True, blank=True)
    #profiles            = models.ManyToManyField(Profiles, null = True, blank = True)
    profiles             = models.ForeignKey(Profiles, null = True, blank = True)
Run Code Online (Sandbox Code Playgroud)

这是我的第一个Django项目,所以欢迎任何建议.

migration django foreign-keys manytomanyfield

47
推荐指数
4
解决办法
1万
查看次数

如何在ManyToMany表(Django)中添加列

从Django Book的例子中,我了解如果我创建如下模型:

from xxx import B

class A(models.Model):
    b = ManyToManyField(B)
Run Code Online (Sandbox Code Playgroud)

Django将在表A之外创建一个新表(A_B),它有三列:

  • ID
  • 援助
  • 出价

但是现在我想在表A_B中添加一个新列,因此如果我使用普通的SQL会很容易,但现在任何人都可以帮我怎么做?我在本书中找不到任何有用的信息.

python django many-to-many

27
推荐指数
1
解决办法
1万
查看次数