Массовое обновление (включая удаление) отношений "многие-ко-многим" django

У меня есть приложение Django с двумя моделями, связанными отношениями "многие-ко-многим".

Сервис, тип_проблемы.

Служба оказывает помощь по ряду типов проблем. Я использую таблицу problem_type, чтобы впоследствии облегчить поиск всех служб, оказывающих помощь при определенном типе проблемы.

Я обновляю свою модель из внешнего API. Я принимаю список "problem_types" для каждой услуги, например:

['housing', 'financial aid' ... etc]

Со временем служба может получить новые типы_проблем или удалить старые. Существует ли лучшая практика для управления этим?

Добавление новых отношений problem_types или новых problem_types - это нормально, я просто просматриваю входящий список проблемных типов и добавляю все новые в отношения/таблицу problem_type, но какой лучший способ удалить лишние?

Лучше всего:

  1. Пройтись по ассоциированным типам проблем и удалить каждую связь не в новом входящем списке?
  2. Получить все связанные типы проблем и удалить каждую связь перед повторным добавлением входящего списка
  3. .
  4. Есть ли какой-то встроенный метод для этого, который я не смог найти?

В идеальном мире хотелось бы иметь возможность передавать входящий список новых проблемных_типов с текущим набором связанных проблемных_типов в метод и добавлять/удалять по мере необходимости. Существует ли что-то подобное или я должен это реализовать?

Вернуться на верх