在 html 中使用 for 循环显示图像
displaying images using for loop in html
我是 django 的新手,现在我正在学习如何访问数据库中的图像并使用 html 显示它。我想将图像作为元素放入列表中以进一步设置样式并使用 css 使页面响应,但我不想将每张图像都写为列表项,因为数据库中有 100 多张图像.我试过下面的代码,但它没有将图像显示为列表。如果有更好的方法,请提出建议。我的 models.py
中有 image
作为模型。
<div class='gallery'>
{% for x in photo %}
<ul>
<li><img class="images" src="{{x.image.url}}"/></li>
</ul>
{% endfor %}
</div>
此为参考型号:
from django.db import models
class Photo(models.Model):
photo_uploader = models.CharField(max_length=50)
desc = models.CharField(max_length=300)
image = models.ImageField(upload_to="home/images")
这是观点:
def profile(request):
username = None
if request.user.is_authenticated:
photos_to_show = []
username = request.user.username
photos = Photo.objects.filter(photo_uploader=username)
return render(request, 'profile.html', {'name': username, 'photo': photos})
<ul>
标签应该放在 循环之外 ,否则你每次都会开始一个新的 <ul>
并结束那个 </ul>
每张图片:
<div class='gallery'>
<b><ul></b>
{% for x in photo %}
<li><img class="images" src="{{ x.image.url }}"/></li>
{% endfor %}
<b></ul></b>
</div>
我是 django 的新手,现在我正在学习如何访问数据库中的图像并使用 html 显示它。我想将图像作为元素放入列表中以进一步设置样式并使用 css 使页面响应,但我不想将每张图像都写为列表项,因为数据库中有 100 多张图像.我试过下面的代码,但它没有将图像显示为列表。如果有更好的方法,请提出建议。我的 models.py
中有 image
作为模型。
<div class='gallery'>
{% for x in photo %}
<ul>
<li><img class="images" src="{{x.image.url}}"/></li>
</ul>
{% endfor %}
</div>
此为参考型号:
from django.db import models
class Photo(models.Model):
photo_uploader = models.CharField(max_length=50)
desc = models.CharField(max_length=300)
image = models.ImageField(upload_to="home/images")
这是观点:
def profile(request):
username = None
if request.user.is_authenticated:
photos_to_show = []
username = request.user.username
photos = Photo.objects.filter(photo_uploader=username)
return render(request, 'profile.html', {'name': username, 'photo': photos})
<ul>
标签应该放在 循环之外 ,否则你每次都会开始一个新的 <ul>
并结束那个 </ul>
每张图片:
<div class='gallery'>
<b><ul></b>
{% for x in photo %}
<li><img class="images" src="{{ x.image.url }}"/></li>
{% endfor %}
<b></ul></b>
</div>