Django models 我想在管理面板的change_列表中使用水平过滤器显示视频thumnail,视频是一个ManyToManyField

Django models 我想在管理面板的change_列表中使用水平过滤器显示视频thumnail,视频是一个ManyToManyField,django-models,django-admin-tools,Django Models,Django Admin Tools,在models.py中: class VideoList(models.Model): #rest of the code url = models.URLField(blank=True) video = models.FileField(upload_to='videos/', default='videos/') artists = models.ManyToManyField(Artist) def __str__(self):

在models.py中:

class VideoList(models.Model):
    #rest of the code
    url = models.URLField(blank=True)
    video = models.FileField(upload_to='videos/', default='videos/')
    artists = models.ManyToManyField(Artist)

    def __str__(self):
        return self.title


class VideoInSection(models.Model):
    #rest of the code
    video_id = models.ManyToManyField(VideoList)
    section_id = models.ForeignKey(SectionList, on_delete=models.CASCADE)

    @property
    def thumbnail_preview(self):
        if self.video_id:
            return mark_safe(('<video style="width:320px;height:240px;" src="{}" type="video/mp4" controls />').format(self.video_id.all()))
    return ""

    def __str__(self):
        return 'Video'
更好的问题是: 我想显示一个框,其中我有视频表中使用多对多字段的视频,想选择多个视频并添加到特定部分,还想在多选择框中显示视频缩略图,以便用户可以通过检查播放视频的类别来观看和选择视频,但无法获得解决方案,请提供帮助我我对Django不太在行。提前谢谢

我希望这个问题能清楚地说明

class VideoInSectionAdmin(admin.ModelAdmin):
    search_fields = ['app_id__app_name', 'package_id__package_name', 'video_id__title', 'section_id__section_name']
    list_display = ['app_id', 'package_id', 'thumbnail_preview', 'section_id']
    fieldsets = (
        (None, {
            'fields': (('app_id', 'package_id', 'section_id'), 'video_id', 'thumbnail_preview')
        }),
    )
    filter_vertical = ('video_id',)

    def thumbnail_preview(self, obj):
        return obj.thumbnail_preview

    thumbnail_preview.allow_tags = True

    list_per_page = 10
    readonly_fields = ('thumbnail_preview',)