Я пытаюсь сделать что-то похожее, используя фреймворк contenttypes, но проблема возникает при отображении отношений в административной области. Я пытался взломать это вместе, чтобы просто показать флажок "Избранное?" рядом с ним.
class FeaturedContent(models.Model):
content_type = models.ForeignKey(ContentType)
object_id = models.PositiveIntegerField()
content_object = generic.GenericForeignKey('content_type', 'object_id')
Пока не ясно, как установить флажок.