from django.contrib import admin from polymorphic.admin import ( PolymorphicParentModelAdmin, PolymorphicChildModelAdmin, PolymorphicChildModelFilter, ) from apps.content.models import ( Baner, Content, Image, Text, ImageText, Video, Gallery, GalleryImage, ImageObject, Contest,ContestWork, ) @admin.register(Baner) class BanerAdmin(admin.ModelAdmin): list_display = ( 'text', 'button_text', 'url', 'image', ) @admin.register(ImageObject) class ImageObjectAdmin(admin.ModelAdmin): list_display = ( 'id', 'image', 'created_at', 'update_at', ) class ContentChildAdmin(PolymorphicChildModelAdmin): base_model = Content show_in_index = True base_fieldsets = ( (None, {'fields': ('course', 'lesson', 'title', 'position',)}), ) @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(Gallery) class GalleryAdmin(ContentChildAdmin): base_model = Gallery @admin.register(Content) class ContentAdmin(PolymorphicParentModelAdmin): base_model = Content polymorphic_list = True child_models = ( Image, Text, ImageText, Video, ) @admin.register(GalleryImage) class GalleryImageAdmin(admin.ModelAdmin): pass @admin.register(Contest) class ContestAdmin(admin.ModelAdmin): base_model = Contest @admin.register(ContestWork) class ContestWorkAdmin(admin.ModelAdmin): base_model = ContestWork