Я пытаюсь понять, как разложить две мои модели Django так, чтобы при сохранении новой модели в базе данных ее первичный ключ увеличивался так, чтобы он был следующим по значению для всех записей с тем же внешним ключом.
Это очень похоже на этот вопрос, но мне интересно, как это сделать в Django. Вот выдержка из вопроса, которая демонстрирует похожую ситуацию:
id | job_id | title
0 1 hi
1 1 hello
2 1 goodbye
0 2 hi
1 2 hello
Я знаю, что в модели Django нельзя иметь несколько первичных ключей и можно использовать unique_together, но в документации сказано, что используется эквивалентный UNIQUE
оператор в CREATE
операторах. Будет ли
class ModelA(models.Model):
key = models.PositiveIntegerField(primary_key = True)
fk = models.ForeignKey(ModelB)
def Meta(self):
unique_together = ("key", "fk")
в моделях работать с этим ответом для достижения того, что я ищу? Отношения между моделями - это одна ModelA
, имеющая много ModelB
, но каждая ModelB
, имеющая только одну ModelA
.