У меня есть приложение для профилей участников, в котором хранится простая информация о членах команды. Часть профиля - это изображение, которое будет использоваться в качестве аватара. Я использовал Photologue для создания стандартных галерей фотографий, но у него есть ImageModel , который можно расширить, чтобы воспользоваться возможностями изменения размера и кэширования Photologue.
Проблема в том, что пример, который они приводят на своей странице, выглядит следующим образом:
from django.contrib.auth.models import User
from photologue.models import ImageModel
class UserPortrait(ImageModel):
user = models.OneToOneField(User, primary_key=True)
Я мог бы заменить Пользователя Участником, и все было бы хорошо, за исключением того факта, что редактирование профиля становится двухэтапным процессом; Сначала мне нужно создать профиль участника, затем создать UserPortrait и связать его с участником. Я хотел бы упростить это обратно в один шаг процесса, как если бы я использовал ImageField.
Я переопределил поля изображения на уровне формы и уровне admin.py, но мне интересно, смогу ли я справиться с этим на уровне модели или даже на уровне поля. Я хотел бы иметь встроенную функциональность ImageField, но при этом иметь файл, управляемый отдельной связанной моделью. Действительные строчки модели кажутся излишними, поскольку это всего лишь одно изображение.