Несколько отношений "многие-ко-многим" через одну модель в Django проблема
у меня проблема, я не знаю как сделать несколько отношений многие-ко-многим через одну модель.
Это мои отношения с БД :
и это мой код, я хочу знать, правильно ли то, что я сделал или нет?
class Projects(models.Model):
Project_name = models.CharField(max_length=50)
Poject_key = models.CharField(max_length=50)
CITools = models.ForeignKey(CITools,null=True,on_delete=models.CASCADE)
UsersO = models.ManyToManyField(User,through='OwnerShips') # for user Ownerships
UserF = models.ManyToManyField(User,through='Favorites') # for user Favorites
Это мой класс OwnerSHips :
class OwnerShips(models.Model):
user = models.ForeignKey(User,on_delete=models.CASCADE)
project = models.ForeignKey(Projects,on_delete=models.CASCADE)
А это мой любимый класс:
class Favorites(models.Model):
user = models.ForeignKey(User,on_delete=models.CASCADE)
project = models.ForeignKey(Projects,on_delete=models.CASCADE)
Не думаю, что вы можете использовать внешние ключи (владения и избранное) в Project до того, как эти классы будут созданы.
На самом деле я нашел решение, я использовал атрибут related_name, так что Django создал эти две таблицы автоматически