Проблемы с аватарами Django
У меня проблема в моем django приложении, когда я редактирую пользователя, моя фотография аватара удаляется и возвращается к фотографии по умолчанию, я думаю, что проблема в представлениях, потому что все работает правильно, если я загружаю значения из django admin, Если бы вы могли помочь мне, я был бы очень признателен. Вот код:
Просмотров:
@login_required
def editar_user(request):
mensaje = ""
if request.method == "POST":
extension_logued_user, _ = Avatar.objects.get_or_create(user=request.user)
FormularioUser = NuestraEdicionUser(request.POST, request.FILES)
if FormularioUser.is_valid():
logued_user = request.user #intancia del Usuario
logued_user.email = FormularioUser.cleaned_data['email']
logued_user.first_name = FormularioUser.cleaned_data['first_name']
logued_user.last_name = FormularioUser.cleaned_data['last_name']
extension_logued_user.imagen = FormularioUser.cleaned_data['imagen']
extension_logued_user.link = FormularioUser.cleaned_data['link']
extension_logued_user.more_info = FormularioUser.cleaned_data['more_info']
if FormularioUser.cleaned_data['password1'] != '' and `FormularioUser.cleaned_data['password1'] == FormularioUser.cleaned_data['password2']:`
logued_user.set_password(FormularioUser.cleaned_data.get("password1"))
else:
mensaje = ""
if extension_logued_user.imagen is None:
pass
logued_user.save()
extension_logued_user.save()
return render(request, "index/index.html", {"mensaje":mensaje})
else:
extension_logued_user, _ = Avatar.objects.get_or_create(user=request.user)
return render(request, "EditUser.html",
{"FormularioUser":FormularioUser,"mensaje":mensaje})
extension_logued_user, _ = Avatar.objects.get_or_create(user=request.user)
FormularioUser = NuestraEdicionUser(
initial={
'first_name': request.user.first_name,
'last_name': request.user.last_name,
'email': request.user.email,
'imagen': extension_logued_user.imagen,
'link': extension_logued_user.link,
'more_info': extension_logued_user.more_info,
}
)
return render(request, "EditUser.html", {"FormularioUser": FormularioUser, "mensaje":mensaje})
Шаблон:
{% extends 'index/index.html' %}
{% load static %}
{% block Encabezado %}
<h1>Tu cuenta</h1>
{% endblock Encabezado %}
{% block PruebaTemplate %}
{% if msj %}
{{msj}}
{% endif %}
{% if request.user.avatar.imagen.url is not None%}
<img src="{{request.user.avatar.imagen.url}}" alt="imagen de perfil" class="rounded-circle rounded mx-auto d-block" height="150" width="150"> <br>
{% else %}
<img src="{% static 'assets\img\fondo.png' %}" alt="imagen de perfil" class="rounded-circle rounded mx-auto d-block" height="150" width="150"> <br>
{% endif %}
<table>
<h1 class="text-center">{{request.user.first_name}} {{request.user.last_name}}</h1> <br>
<p> Email: {{request.user.email}}</p>
<p> Bio: {{request.user.avatar.more_info}}</p>
<a href="{{request.user.avatar.link}}">Pagina Web</a> <br><br>
<a href={% url 'EditarPerfil' %}>Editar Perfil</a>
</table>
{% endblock PruebaTemplate %}