ImageField не работает во вложенной встроенной модели в Django admin - PullRequest
0 голосов
/ 08 апреля 2020

Я использую вложение встроенных моделей. Для глубокого вложения моделей я использую пакет django -nested-inline == 0.4.2.

ImageField не работает при использовании вложения встроенных моделей. Я выбираю изображение и при сохранении записи изображение не загружается, и я не получаю никакой ошибки. Если После выбора изображения и сохранения Ниже приведен код модели и администратора.

Работает нормально при использовании 1-го уровня вложенности встроенной модели, но не при глубокой вложенности модели.

После сохранения изображение записи не загружается, а поле изображения пустое.

models.py

class Course(models.Model):
    name = models.CharField(max_length=255)


class Book(models.Model):
    name = models.CharField(max_length=255)
    course = models.ForeignKey(Course, on_delete=models.CASCADE)


class Lesson(models.Model):
    name = models.CharField(max_length=255)
    book = models.ForeignKey(Book, on_delete=models.CASCADE)

class LessonImage(models.Model):
    image = models.ImageField(null=True, blank=True, upload_to="uploads/")
    lesson = models.ForeignKey(Lesson, on_delete=models.CASCADE, related_name='lesson_image')

admin.py

class LessonImageInline(NestedStackedInline):
    model = LessonImage
    extra = 1
    min_num = 0


class LessonInline(NestedStackedInline):
    model = Lesson
    extra = 1
    min_num = 0
    inlines = [LessonImageInline]


class BookInline(NestedStackedInline):
    model = Book
    extra = 1
    min_num = 0
    inlines = [LessonInline]


@admin.register(Course)
class CourseAdmin(NestedModelAdmin):
    list_display = ('created_at', 'updated_at')
    list_per_page = 50
    inlines = [BookInline]

Панель администратора курса:

...