我想比较django模板中的变量。问题如下。 我正在页面中加载一组照片。加载模板时,它包含所有照片。但是当用户点击编辑按钮时,我希望只有该用户保存的照片属性才能处于可编辑模式。
在我的模板中,我有以下
{% for img in images.object_list %}
<!-- EDIT VIEW -->
{% if view == "edit" %}
{% if user_id_log == img.image.name %}
<<Load Photos if user id matches with logged in user>>
{% else %}
<<Skip that photo>>
上面写的最后一行不起作用。
user_id_log - 登录用户的用户ID。从render_to_response方法中的视图传递它
img.image.name - 包含创建该照片的用户ID。
images.object_list是图像对象列表。
请让我知道如何实现这个目标
加
我在view.py中进行类型转换后将user_id_log作为int传递此外,img.name在数据库中也是int
Views.py
def album(request, pk, view="thumbnails"):
num_images = 30
if view == "full": num_images = 10
album = Album.objects.get(pk=pk)
images = album.image_set.all()
user_id = int(request.user.id)
# add list of tags as string and list of album names to each image object
for img in images.object_list:
tags = [x[1] for x in img.tags.values_list()]
img.tag_lst = join(tags, ', ')
img.album_lst = [x[1] for x in img.albums.values_list()]
d = dict(user_id_log=user_id,album=album, images=images, user=request.user, view=view,
albums=Album.objects.all(),
backurl=request.META["HTTP_REFERER"],media_url=MEDIA_URL)
d.update(csrf(request))
return render_to_response("photo/album.html", d)