Как вывести изображение вместо имени файла python django

В models.py

class profile(models.Model):
    name = models.CharField(max_length = 20, null = True)
    photo = ThumbnailerImageField(default='photo',
                              resize_source= dict(quality=95,
                                                 size=(600,600),
                                                 sharpen=True))

views.py

def profile1(request, category):
    idc=decode(category)
    person = profile.objects.get(id = idc)
    return render(request, 'register/profile.html', context={"name":person.name,"photo":person.photo})

forms.py

class form2(forms.Form):
    name = forms.CharField(label = "логин")
    photo = forms.ImageField(label="фото")

в шаблоне(profile.html)

{{name}}
{{photo}}

settings.py

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

urls.py

app_name = "register"

urlpatterns = [
    path("<int:category>/", views.profile1, name = "profile"),
]

У меня работает регистрация и вход в созданный аккаунт, выводится имя пользователя, но вместо картинки(аватарки пользователя) выводится имя файла. Можно ли это исправить?


Ответы (1 шт):

Автор решения: Vadim.Sharoikin

попробуйте выводить так

<img src="{{photo.url}}">

и добавьте в url проекта

+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
→ Ссылка