Django обратная ссылочная целостность - PullRequest
0 голосов
/ 27 мая 2019

Во-первых, извините за заголовок, я искал несколько часов, но все еще не могу найти техническое название для этого вопроса.Но, предположим, что у вас есть отношения многие-к-одному, такие как книги и главы:

class Book(models.Model):
    name=models.CharField(max_length=200)


class Chapter(models.Model):
    book = models.ForeignKey(Book, on_delete=models.CASCADE)
    name=models.CharField(max_length=200)

Ссылочная целостность потребует, чтобы каждая глава указывала на существующую книгу.Я также требую обратного, чтобы каждая книга была отмечена хотя бы одной главой.Два непосредственных следствия таковы: - Когда бы ни создавалась книга, одновременно должна быть создана как минимум одна глава.- При удалении последней оставшейся главы книги книга должна удаляться автоматически.Мои вопросы: - Какой на самом деле правильный термин для описания этого ограничения?- Возможно ли в любой СУБД применить это ограничение в БД?Или это должно быть создано на уровне приложения.- В Django, как я мог создать это ограничение?

...