是否可以手动指定Django中ManyToManyField
创建的表的结构?
我试图将Django与现有数据库集成,并希望能够使用现有表中的数据。它无法改变数据库的结构,因为这会破坏使用数据库的原始应用程序。
如果有帮助,以下是表格定义:
class People(models.Model):
person_id = models.CharField(db_column='PersonId', primary_key=True)
first_name = models.CharField(db_column='FirstName')
...
class PersonCats(models.Model):
category_id = models.IntegerField(db_column='PersonCatId', primary_key=True)
title = models.CharField(db_column='Title', max_length=50)
...
class PersonCatPeople(models.Model): #No primary key on this table
person_cat_id = models.IntegerField(db_column='PersonCatId)
person_id = models.CharField(db_column='PersonId')
...
答案 0 :(得分:1)
我在模型中看不到任何ManyToMany字段,但我认为您正在寻找through
的{{1}}选项。您可以指定要在两个相关表之间使用的自定义表,并且可以定义其结构(字段):
这里有一个例子:
ManyToManyField