Есть код вида (конкретно этот взят из примера на оф.сайте):
from django.db import models
class Author(models.Model):
name = models.CharField(max_length=100)
def __str__(self):
return self.name
class Publication(models.Model):
title = models.CharField(max_length=30)
class Meta:
ordering = ['title']
def __str__(self):
return self.title
class Article(models.Model):
headline = models.CharField(max_length=100)
publications = models.ManyToManyField(Publication)
class Meta:
ordering = ['headline']
def __str__(self):
return self.headline
и
from django.contrib import admin
from .models import Publication, Article
class MembershipInline(admin.TabularInline):
model = Article.publications.through
class ArticleAdmin(admin.ModelAdmin):
exclude = ('publications', )
inlines = [MembershipInline, ]
admin.site.register(Article, ArticleAdmin)
class PublicationAdmin(admin.ModelAdmin):
inlines = [MembershipInline, ]
admin.site.register(Publication, PublicationAdmin)
Стоит задача сделать так, чтобы можно было не только выбрать, но и создавать/редактировать связанные записи.