Cuando trabajamos en Django, es común colocar el avatar de nuestro usuario en el panel, si tenemos habilitado nuestro modulo "context_procesor"
, dentro de templates en nuestro archivo setting.py
., podemos seguir las instrucciones siguiente.
Como recuperar una imagen en Django dinámicamente.
El código para llamar a nuestra imagen podría ser este:
<img src='{{user.avatar.url }}' alt="{{user.username }}" class="class="img-fluid user_imag rounded-circle">
Si el modulo no estuviera habilitado debemos incluirlo
TEMPLATES= [
{ 'BACKEND':
'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS':
True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request', #modulo
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
}, }, ]
La magia está, en que el método request()
, nos traerá la instancia del user a toda pagina que tengamos, por tanto dispondremos de sus atributos, para el usuario visitante.
Recuperando una imagen en el html
Suponiendo que hemos creado nuestro modelo, nuestro form y nuestras url, podemos recuperar a nuestra imagen con
{% for a in object_list %} <section class="dashboard-header section-padding" style=" border:2px solid blue; margin-bottom:15px;"> <div class="container-fluid"> <div class="col-lg-3" > <img src='{{a.profile.photouser.url}}' alt="{{a.user.username}}" class="img-fluid user_imag rounded-circle"> </div> ……. </section> {% endfor %}
“…. hay que levantarse cada mañana con una esperanza y dormirse cada noche con una meta…“.
Espero que sirva de ayuda a alguien