from django.contrib import admin from polymorphic.admin import ( PolymorphicParentModelAdmin, PolymorphicChildModelAdmin, PolymorphicChildModelFilter, ) from apps.content.models import ( Content, Image, Text, ImageText, Video, Gallery, GalleryImage, ImageObject, ) @admin.register(ImageObject) class ImageObjectAdmin(admin.ModelAdmin): list_display = ( 'id', 'image', 'created_at', 'update_at', ) class ContentChildAdmin(PolymorphicChildModelAdmin): base_model = Content @admin.register(Image) class ImageAdmin(ContentChildAdmin): base_model = Image @admin.register(Text) class TextAdmin(ContentChildAdmin): base_model = Text @admin.register(ImageText) class ImageTextAdmin(ContentChildAdmin): base_model = ImageText @admin.register(Video) class VideoAdmin(ContentChildAdmin): base_model = Video @admin.register(Content) class ContentAdmin(PolymorphicParentModelAdmin): base_model = Content child_models = ( Image, Text, ImageText, Video ) @admin.register(Gallery) class GalleryAdmin(admin.ModelAdmin): pass @admin.register(GalleryImage) class GalleryImageAdmin(admin.ModelAdmin): pass