1. How to edit mutiple models from one Django admin?

To be able to edit multiple objects from one Django admin, you need to use inlines.

You have the Category model, and you need to add and edit Villain models inside the admin for Category. You can do:

class VillainInline(admin.StackedInline):
    model = Villain

class CategoryAdmin(admin.ModelAdmin):

    inlines = [VillainInline]

You can see the form to add and edit Villain inside the Category admin. If the Inline model has alot of fields, use StackedInline else use TabularInline.