У меня есть два приложения - одно для собак и одно для пометов - где в идеале я хотел бы иметь внешние ключи друг к другу, что-то вроде этого:
In dogs.py:
from litters.py import Litter
class Dog(models.Model):
name = models.CharField(max_length=55)
Litter = models.ForeignKey(Litter, blank=True)
In litters.py
from dogs.py import Dog
class Litter(models.Model):
name = models.CharField(max_length=55)
sire = models.ForeignKey(Dog, related_name='dog_sire_set')
dam = models.ForeignKey(Dog, related_name='dog_dam_set'
Когда я создаю новый помет, я хочу, чтобы дамба и отец помета (мама и папа) приходили из моего стола с собаками, следовательно, два ФК - к даме и сире. Поэтому, прежде чем я смогу создать помет, у меня должно быть как минимум две записи о собаках.
Позже, при описании новых записей о собаках, я хочу знать помет собаки, если он известен, и этот помет должен быть из моей таблицы пометов. Не нужно требовать, чтобы у собаки был помет, но если это поле не равно нулю, я бы хотел это знать.
Код выше не будет работать, но он демонстрирует, чего я хочу достичь. Буду признателен за любые советы, как решить эту проблему. Спасибо.