Relaciones genéricas de muchos a muchos en django admin

Tengo pocos modelos similares en Django:

class Material(models.Model):
    title = models.CharField(max_length=255)
    class Meta:
        abstract = True

class News(Material):
    state = models.PositiveSmallIntegerField(choices=NEWS_STATE_CHOICES)

class Article(Material):
    genre = models.ForeignKey(Genre, verbose_name='genre')

Y modeloTem, que está relacionado con Noticias y artículos como ManyToMany.

Me gustaría usar relaciones genéricas de muchos a muchos como en estacas. Pero la pregunta es cómo usar el widget predeterminado ManyToMany en el administrador de django. U otro análogo conveniente.

UPD: Si no usara genéricos, escribiría

class News(Material): 
    topic = models.ManyToMany(Topic) 

class Article(Material):
    topic = models.ManyToMany(Topic)

Y obtendría 2 tablas idénticas que expresan estas relaciones. Me pregunto si podría usar genéricos para tener una tabla intermedia, porque no solo las noticias y los artículos pueden tener un tema en mi base de datos. Las noticias y los artículos también pueden estar relacionados con 2 o más temas.