Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Django
  • » Подскажите примеры работы с django.core.files. [RSS Feed]

#1 Ноя. 25, 2012 12:20:47

buddha
От:
Зарегистрирован: 2012-03-02
Сообщения: 422
Репутация: +  15  -
Профиль   Отправить e-mail  

Подскажите примеры работы с django.core.files.

Здравствуйте. Есть такая задачка: в профиле пользователя менять данные через форму. В этой форме есть поле с загрузкой изображения(для аватарки). Если это поле оставлять пустым, то при сохранении данных формы вместо старой аватарки сохраняется пустое значение. Я делал проверку на поступившие данные и пробовал полю модели(для аватарки) присваивать старое значение:

if request.method == 'POST':
        form = ManualUserProfileForm(request.POST, request.FILES)
        if form.is_valid():
            data = form.cleaned_data
            print data
            user_ins = User.objects.get(username=request.user.username)
            profile_ins = User.get_profile(request.user)
            for key, val in data.items():
                print key, type(key)
                if hasattr(profile_ins, key) and val!='':
                    profile_ins.__dict__[key] = val
                elif hasattr(profile_ins, key) and (val=='' or val is None): #для поля аватарки тут не проходит
                    print 'step', key, '___'+str(val)
                    profile_ins.__dict__[key] = profile_ins.__dict__[key]
                elif key=='avatar': print '_____'+str(val)  #и тут почему то тоже
            profile_ins.save()
Но такой способ не проходит. Для остальных полей вс работет корректно, для поля изображения - нет…

Прочитал https://docs.djangoproject.com/en/1.4/ref/files/
Вроде бы понятно. Но хотелось бы увидеть примеры(да и проблему решить не смог пока).

Отредактировано buddha (Ноя. 25, 2012 12:22:16)

Офлайн

  • Начало
  • » Django
  • » Подскажите примеры работы с django.core.files.[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version