Django图像显示

时间:2010-07-16 14:45:42

标签: python django url

好的,现在我知道如何在ONE / myurl / Django中显示图像作为列表(YEAH!)

但是如何通过按钮单击下一个图像等,每个网址显示一个图像。

所以基本上我想来第一个/ urlstart /:

文字和下一个按钮。

将用户带到例如/ urlstart / 1

显示列表的第一个图像,下面是一个按钮。

将用户带到/ urlstart / 2

此处显示列表的下一个图像。

url.py正则表达式部分如何看起来像这样可能? 如何调整视图以获得1个图像列表但是多个网址?

最后,如果有人用可下载和可安装的模块/库实现了这一点,例如photologue(不幸的是,这对我不起作用)或任何更好的想法,我会很高兴得到一些关于如何使这快速和有效的见解。

非常感谢每个花时间回答的人!

2 个答案:

答案 0 :(得分:1)

网址正则表达式可能如下所示:

url(r'^urlstart/(?P<image_id>\d*)/?$', 'urlstart', name='urlstart')

查看代码可能如下所示:

def urlstart(request, image_id=0):
  if image_id == 0:
    image = None
  else:
    image = get_object_or_404(Image, image_id)
  next_image = image_id + 1

  return render_to_response('template.html', locals(), context_instance=RequestContext(request)

模板代码:

{% if image %}
  <img src={{ image.url }}>
  <a href="/urlstart/{{ next_image }}">Next</a>
{% else %}
  Put your text here.  See first image by clicking <a href="/urlstart/1">here</a>
{% endif %}

显然这是简化的。例如,您可能想要检查下一步是否有图像。

希望这有帮助。

答案 1 :(得分:0)

查看Pagination,它将为您提供下一个/上一个链接等。

此外,最好使用permalinks并从视图中传递下一张/上一张图片,而不是将网址硬编码到模板中。