Как получить доступ к объекту ImageField и отобразить его в шаблоне - PullRequest
0 голосов
/ 28 мая 2020

У меня проблемы с доступом к данным из базы данных, в которых должны быть изображения. Как я могу получить к ним доступ, а затем отобразить их в шаблоне.

#models.py
class Pic(models.Model):
image = models.ImageField(upload_to='cover/pdfs', null=True, blank = True)

#forms.py
class ImageForm(forms.ModelForm):
class Meta:
    model= Pic
    fields= "__all__"

#views.py
def dash(request):
try:
    _id = request.session['client']['id']
except:
    return redirect("/loginPg")

userBio = Bio.objects.get(userData = User.objects.get(id = request.session['client']['id']))

theUploads = Pic.objects.all()
print("This image object -", theUploads)
#for pic in theUploads:
    #print("MyPc", pic["image"])
content = {
    "title" : userBio.title,
    "qA" : userBio.quoteA,
    "qB" : userBio.quoteB,
    "desc" : userBio.desc,
    "authorA" : userBio.authorA,
    "authorB" : userBio.authorB,
    "pictures" : theUploads
}

return render(request, "GoEnigma/dashboard.html", content)

Я слышал о Pillow и видел документацию. Я не понимаю, как это могло бы помочь в решении проблемы. Если есть какие-то идеи по этому поводу, с радостью воспользуюсь ими.

1 Ответ

2 голосов
/ 28 мая 2020

В вашем html вы можете перебирать «картинки», как показано ниже:

{% for picture in pictures %}
  ...
  <img src="{{picture.image.url}}"/>
  ...
 {% endfor %}
...