Невозможно изменить изображение с помощью imagekit ModelForm

В настоящее время я использую:

  1. Питон 3.3
  2. Джанго 1.6.5
  3. Джанго-образкит 3.2.1
  4. django-guardian (я не думаю, что это связано, я могу подтвердить, что разрешения на уровне строк верны в модели профиля)

Кажется, я не могу изменить изображение профиля через ModelForm. ModelForm, кажется, обновляет все другие поля, прикрепленные к модели, при отправке через UpdateView (переходит к success_url). Я пробовал использовать обычный ImageField и использовать form-ProcessedImageField, и это тоже не сработало. Как ни странно, я действительно могу "удалить" изображение с помощью UpdateView (имеется в виду удаление ссылки на изображение, оно остается на диске). Кроме того, я могу свободно менять изображение на страницах администратора, и оно также правильно генерирует миниатюру.

Не уверен, что еще попробовать или что здесь происходит. Помощь будет принята с благодарностью.

Модель:

class Profile(models.Model):
    ...
    avatar = ProcessedImageField(
        upload_to=get_upload_filepath,
        processors=[ResizeToFill(500, 500)],
        format='JPEG',
        blank=True,
        default='img/200x200.gif'
    )
    avatar_thumbnail = ImageSpecField(
        source='avatar',
        processors=[ResizeToFill(200,200)],
        format='JPEG',
        options = {
            'quality': 100
        }
    )
    ... some more fields

Вспомогательная функция:

def get_upload_filepath(instance, filename):
    return '/'.join(['img', instance.user.username, 'avatar.jpg'])

МодельФорма:

class ProfileForm(ModelForm):
    ... overridden widgets on some fields
    class Meta:
        model = Profile
        fields = ('first_name', 'last_name', 'birth_date', 'phone_number', 'avatar')

Редактировать:

form.cleaned_data['аватар'] - нет

self.request.FILES — это MultiValueDict: {}


person mpalen    schedule 30.06.2014    source источник
comment
Используете ли вы enctype multipart/form-data? stackoverflow .com/questions/12260595/   -  person Andrew_Lvov    schedule 01.07.2014
comment
ModelForm генерирует следующий тип ввода: ‹input id=id_avatar name=avatar type=file› Кажется, это тот же тип ввода, что и на странице администратора.   -  person mpalen    schedule 01.07.2014
comment
Сотрите это. Ты прав. Отсутствовал enctype в форме. Большое спасибо!   -  person mpalen    schedule 01.07.2014