У меня есть модуль данных, который включает Vendor
объекты и VendorCategory
объекты. У каждого поставщика есть несколько категорий, и у каждой категории может быть несколько поставщиков.
Мне нужно перечислить всех поставщиков в данной категории, и все категории в рамках данного поставщика.
Основные операции выполняются на поставщиках, поэтому я пишу код для обновления / удаления VendorCategory
объектов на основе операций редактирования на поставщиках.
Я бы хотел бы , чтобы эти операции были транзакционными: т. Е. Категория поставщика обновляется, если обновляется / исчезает / редактируется поставщик, а не иначе Но у меня есть вещи, настроенные как неизвестные отношения «многие ко многим», поэтому AFAIK невозможно использовать транзакции, поскольку они находятся в разных группах сущностей.
Есть ли лучший способ смоделировать эти отношения? Нужно ли мне просто смириться с этим и жить с нетранзакционной природой зверя? Я думал об использовании очереди задач для периодической очистки и очистки отношений, это лучший способ?