В проекте Django загруженный img не отображается на сайте

Я просто хочу отобразить картинку профиля.Img загружается успешно, но не показывает img.Но если я пытаюсь в админ панели, то показывает img. Вот мой код index.html

{% extends 'Login_app/base.html' %}
{% block body_block %}
{% if user.is_authenticated %}
<p>Hi {{ user_basic_info.username }},</p>
<p>Your Email {{ user_basic_info.email }}</p>
<p><a href="{{user_basic_info.facebook_id }}"> Facebook Profile </a></p>
<img src="/media/{{ user_more_info.profile_pic }}" width="200px">

{% else %}

<div class="alert alert-primary"></div>You are not logged in!!</div>

{% endif %}


{% endblock %} 

Вот мой setup.py media setting

import os
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')  # This is a tuple
MEDIA_URL = '/media/'

Here the ss of website Здесь ss сайта

Вы должны добавить .url после фотографии профиля.

Попробуйте это:

<img src="/media/{{ user_more_info.profile_pic.url }}" width="200px">

ИЛИ

В Models.py определите get_absolute_url() метод для присоединения к медиа-каталогу:

def get_absolute_image(self):
        return os.path.join('/media', self.image.name)

И в templates сделайте следующее:

{% for post in posts %}
    <img src="{{ post.get_absolute_image }}" width="200px">
{% endfor %}

p.s.- здесь пост - название модели

установка джанго

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
STATICFILES_DIRS = (
    os.path.join(BASE_DIR, "static"),
)

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

представления джанго

def single_article(request, page, slug):

    article = get_object_or_404(Article, slug=slug)
    return render(request, "article/single_article.html", locals())

шаблон джанго

<`enter code here`img class="d-block w-100 img-responsive" style="height: 100%" src="{{ article.picture.url }}" alt="{{ article.title }}"

> Blockquote

вам не нужно передавать /media/ или использовать .url для получения из db

{% extends 'Login_app/base.html' %}
{% block body_block %}
{% if user.is_authenticated %}
<p>Hi {{ user_basic_info.username }},</p>
<p>Your Email {{ user_basic_info.email }}</p>
<p><a href="{{user_basic_info.facebook_id }}"> Facebook Profile </a></p>
<img src="{{ user_more_info.profile_pic.url }}" width="200px">

{% else %}

<div class="alert alert-primary"></div>You are not logged in!!</div>

{% endif %}


{% endblock %} 

это будет работать, если все еще изображение не загружается добавить вам просмотров

Попробуйте добавить этот код в urls.py проекта:

urlpatterns = [
   ...
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
Вернуться на верх