Показывать в админке изображения, связанные с моделью django
У меня есть модель Book и модель BookImages. Book не связана с изображениями напрямую, вместо этого BookImages имеет Book в качестве внешнего ключа, а в Book может быть много изображений. Я хочу показать подробную информацию о книге вместе с изображениями, связанными с ней, в панели администратора, но здесь Book не имеет никакого отношения к BookImages. Вместо этого BookImages указывает на модель Book. Как я могу показать в админке подробную информацию о книге и все изображения книги?
Ниже приведен точный код модели.
class Book(models.Model):
name = models.CharField(max_length=100)
description = models.CharField(max_length = 5000)
class BookImage(models.Model):
book = models.ForeignKey('Book', on_delete=models.CASCADE)
image = models.ImageField(upload_to=settings.MEDIA_RELATIVE_ROOT + "/bookimages")
Версия Python - 3.7.12, версия django - 3.2.14
Используйте TabularInline
или StackedInline
классы администраторов:
Пример:
# admin.py
class BookImageInline(admin.TabularInline):
model = BookImage
fields = ['image']
extra = 1
class BookAdmin(admin.ModelAdmin):
inlines = [BookImageInline]