Как я делаю many-many поле дополнительным в Django?

Когда у Вас есть many-many отношения (related_name, нет through) и Вы пытаетесь использовать администраторский интерфейс, Вы обязаны вводить одно из отношений даже при том, что он не должен существовать для Вас для создания первой записи.

Я создаю приложение, которое является организатором события. Предположите, что мы имели Event и Group модели, связанные с many-many отношениями.

Django related_name составляет другую таблицу с индексами двух других таблиц.
Но я не вижу оснований, почему эта дополнительная таблица должна быть заполнена.

Если я работаю с базой данных через phpMyAdmin, я могу создать a Group не регистрируясь Event, так как соединение между этими двумя только через отдельную таблицу, и нет никакого осуществления значения базы данных на данном уровне.

Как я заставляю администратора взаимодействовать через интерфейс, это понимает это?
Как я делаю many-many поле дополнительным в Django?

178
задан 3cheesewheel 8 October 2013 в 19:18
поделиться

1 ответ

Если вы хотите иметь возможность указать отношение ManyToMany, не делая его обязательным, просто используйте blank=True:

class Group(models.Model):
    ...
    events = models.ManyToManyField(Event, blank=True)
312
ответ дан 23 November 2019 в 20:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: