Size: a a a

Django [ru] #STAY HOME

2019 April 28

GS

Grigory Surkov in Django [ru] #STAY HOME
Не работает, может во вьюшке что-то неправильно присваивается?
источник

VT

Vadim Tepes in Django [ru] #STAY HOME
.save() видимо забыл для профиля после сохранения картинки
источник

GS

Grigory Surkov in Django [ru] #STAY HOME
разве он не сохраняется вместе с user.save() ?
источник

VT

Vadim Tepes in Django [ru] #STAY HOME
То что ты скинул не имеет user.save()
источник

VT

Vadim Tepes in Django [ru] #STAY HOME
Я про это и написал
источник

VT

Vadim Tepes in Django [ru] #STAY HOME
А не, вижу
источник

VT

Vadim Tepes in Django [ru] #STAY HOME
Сорян
источник

V💊

Vladimir 💊 Voytenko in Django [ru] #STAY HOME
Grigory Surkov
Привет, кто знает, как сделать, у меня есть вьюха change_avatar, которая изменяет аватар пользователя, мне нужно вывести этот аватар, но с помощью {% request.user.profile.avatar %} это не работает.

Изменяет аватар:
def change_avatar(request):
   user = request.user
   form = Change_avatar()
   if request.method == 'POST':
       form = Change_avatar(request.POST, request.FILES)
       if form.is_valid():
           if 'avatar' in request.FILES:
               form.avatar = request.FILES['avatar']
               user.profile.avatar = form.avatar
               form.save(commit=False)
               user.save()
           return HttpResponseRedirect('/accounts/profile/')
       else:
           print(form.errors)
   return render(request, "change_avatar.html", {"form": form})

Обрабатывает страницу профиля:

def profile_page(request):
   return render(request, 'profile.html')

Выводит аватар:

<div class="img-box">
  <a href="change_avatar/">
    <img src="{{ request.user.get_profile.avatar }}"class="box-img" alt="Сменить аватар">
  </a>
</div>
request.user.get_profile.avatar - что это вообще такое и существует ли он? строка, объект, нул?
источник

GS

Grigory Surkov in Django [ru] #STAY HOME
ImageField
источник

V💊

Vladimir 💊 Voytenko in Django [ru] #STAY HOME
Grigory Surkov
ImageField
в ответе что это
источник

V💊

Vladimir 💊 Voytenko in Django [ru] #STAY HOME
понятно что в моделях это картинка
источник

V💊

Vladimir 💊 Voytenko in Django [ru] #STAY HOME
может там ответ вообще пустой
источник

GS

Grigory Surkov in Django [ru] #STAY HOME
В ответе тоже самое
источник

V💊

Vladimir 💊 Voytenko in Django [ru] #STAY HOME
Grigory Surkov
В ответе тоже самое
что в ответе? объект, строка?
источник

GS

Grigory Surkov in Django [ru] #STAY HOME
Объект
источник

V💊

Vladimir 💊 Voytenko in Django [ru] #STAY HOME
что есть в этом объекте?
источник

GS

Grigory Surkov in Django [ru] #STAY HOME
Картинка, если ты это имеешь ввиду
источник

V💊

Vladimir 💊 Voytenko in Django [ru] #STAY HOME
Vladimir 💊 Voytenko
request.user.get_profile.avatar.url
тогда это работало бы
источник

GS

Grigory Surkov in Django [ru] #STAY HOME
Я слышал, что это работает только если класс, расширяющий user называется UserProfile, но у меня он называется Profile, может в этом проблема?
источник

V💊

Vladimir 💊 Voytenko in Django [ru] #STAY HOME
покажи что у тебя там за объект в ответе
источник