Я использую вложение встроенных моделей. Для глубокого вложения моделей я использую пакет 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]
Панель администратора курса: