【发布时间】:2019-06-21 04:09:25
【问题描述】:
我正在开发一款允许上传图片的照片应用。从那里,每张照片都有选择选项——“公共”或“私人”——。对于“公开”的图像,图像将显示在主页上,无需用户授权。但是,我发现难以根据选择过滤图像并在主页上显示相关对象。
我是编码和 Django 的新手,希望能得到一些建议。提前致谢!
这是我的 models.py 文件:
class Images(models.Model):
title = models.CharField(max_length=100)
image = models.ImageField(upload_to='images/')
PRIVATE ='PR'
PUBLIC = 'PU'
PUBLISH_CHOICES = [
(PRIVATE, 'Private'),
(PUBLIC, 'Public'),]
publish = models.CharField(max_length=7,
choices=PUBLISH_CHOICES,
default=PRIVATE)
def __str__(self):
return self.title
这是我的views.py文件
class HomePageView(ListView):
model = Images
template_name = 'index.html'
def my_view(request):
myimages = Images.objects.all()
for entry in myimages:
publish_status = entry.get_publish_display()
return publish_status
这是我的 index.html 文件:
{% for images in images_list %}
{% if publish_status == Public %}
<div class="container">
<h3>{{images.title}}</h3>
<img src="{{images.image.url}}" alt=" {{images.title}}">
</div>
{% endif %}
{% endfor %}
【问题讨论】: