Django Управление вставкой отношений «многие ко многим»

У меня есть следующие модели:

class Item(models.Model):
    # fields
    # ...

class Collection(models.Model):
    items = models.ManyToManyField(Item, related_name="collections")
    # other fields
    # ...

Теперь я хочу две вещи:

Я хочу контролировать, еслиItem можно добавить вCollection.Я хочуCollection обновить некоторые из его полей, еслиItem был добавлен или удален.

Для второго вопроса я знаю, что естьdjango.db.models.signals.m2m_changed который я могу использовать, чтобы подключиться к изменениям отношения. Разрешено ли / нормально менятьCollection в пределах сигнала обратного вызова? Могу ли я использовать сигнал также для «отмены» вставки для выпуска 1?

Ответы на вопрос(2)

Ваш ответ на вопрос