Когда у Вас есть many-many отношения (related_name
, нет through
) и Вы пытаетесь использовать администраторский интерфейс, Вы обязаны вводить одно из отношений даже при том, что он не должен существовать для Вас для создания первой записи.
Я создаю приложение, которое является организатором события. Предположите, что мы имели Event
и Group
модели, связанные с many-many отношениями.
Django related_name
составляет другую таблицу с индексами двух других таблиц.
Но я не вижу оснований, почему эта дополнительная таблица должна быть заполнена.
Если я работаю с базой данных через phpMyAdmin, я могу создать a Group
не регистрируясь Event
, так как соединение между этими двумя только через отдельную таблицу, и нет никакого осуществления значения базы данных на данном уровне.
Как я заставляю администратора взаимодействовать через интерфейс, это понимает это?
Как я делаю many-many поле дополнительным в Django?
Если вы хотите иметь возможность указать отношение ManyToMany, не делая его обязательным, просто используйте blank=True
:
class Group(models.Model):
...
events = models.ManyToManyField(Event, blank=True)