Python - Django ORM ManyToManyField 创建表格
发布时间
阅读量:
阅读量
Python - Django ORM ManyToManyField 创建第三张表
Max.Bai
2020-11
当我们开发过程中以前多对多关系无需在Models表中建立第三张表时,默认情况下Django会自动生成相关表结构;随着业务的发展若需扩展功能就需要手动创建第三张表格并增加相应的字段以满足复杂的数据需求。
如果直接修改并执行的话那就会出现下面的错误:
they are not compatible types (you cannot alter to or from M2M fields, or add or remove through= on
方法一
如果无需维护现有数据,在不考虑数据的情况下(可能不需要),可以先清空数据库并移除所有生成的迁移文件;然后重建数据库结构;最后通过运行makemigrations命令即可恢复。
方法二
当已有一定数量的数据时,在试图保留原有数据的过程中会带来一定的挑战性。这些方法被用来进行数据记录。
操作之前备份数据库,操作失误方便恢复。
python manage.py dumpdata app_name.ModelName 将导致指定表格实现其目标功能
修改自动生成的新增的migration文件,并将AlterField()替换为RemoveField与Ad
全部评论 (0)
还没有任何评论哟~
