Создание TabularInline в представлении администратора Django для унаследованного отношения Many2Many
У меня есть модель тегов и Mixin, которые используются для добавления тегов к объектам всякий раз, когда это необходимо.
class Tag(models.Model):
name = models.CharField(max_length=64, unique=True)
class TagMixin(models.Model):
class Meta:
abstract = True
tags = models.ManyToManyField(Tag, blank=True)
Для создания новых сущностей он работает хорошо, он неявно создает таблицу соответствия для отношения "многие ко многим":
class Item(TagMixin):
name = models.CharField(max_length=64)
Но что, если я хочу создать представление администратора для элемента, где тег является вводом в табличной строке?
Как я должен заполнить конфигурацию:
class ItemTagInline(admin.TabularInline):
model = ?
@admin.register(models.Item)
class ItemAdmin(admin.ModelAdmin):
list_display = ("id", "name")
inlines = [ItemTagInline]
Вы используете модель .through
:
class ItemTagInline(admin.TabularInline):
model = Item.tags.through