Загрузка файла администратора Django с текущим идентификатором модели

Я пытаюсь создать простую фотогалерею с администратором Django по умолчанию. Я хочу сохранить образец фотографии для каждой галереи, но не хочу сохранять название фильма. Вместо имени файла я хотел бы сохранить идентификатор модели ( N.jpg). Но в первый раз, когда я хочу сохранить объект, идентификатор не существует. Как я могу узнать следующее автоматическое увеличение модели или как-то сохранить данные модели перед загрузкой с помощью super.saveи после загрузки файла, когда существует self.id? Есть крутое решение?

Примерно так:

def upload_path_handler(instance, filename):
    ext = filename extension
    return "site_media/images/gallery/{id}.{ext}".format(id=instance.nextincrement, ext=ext)

class Gallery(models.Model):
    name  = models.TextField()
    image = models.FileField(upload_to=upload_path_handler)

И, возможно, сохранить имя файла в другом поле.

15
задан Serjik 19 December 2015 в 10:17
поделиться