Django 图片显示
好的,现在我知道如何在Django中通过一个链接(/myurl/)显示图片列表了(太棒了!)
但是,我想知道如何在每个链接上显示一张图片,并且有一个按钮可以点击查看下一张图片等等。
简单来说,我希望能先访问第一个链接(/urlstart/):
这里有一些文字和一个“下一步”按钮。
点击这个按钮后,用户会被带到例如 /urlstart/1
在这个页面上,会显示列表中的第一张图片,下面还有一个按钮。
这个按钮会把用户带到 /urlstart/2
在这里,会显示列表中的下一张图片。
依此类推。
那么,url.py中的正则部分应该怎么写才能实现这个功能呢?
视图(view)又需要怎么调整,才能从一组图片中生成多个链接呢?
最后,如果有人已经实现过这个功能,并且有可以下载和安装的模块或库,比如说photologue(可惜我试过没成功),或者有什么更好的主意,我会非常高兴能得到一些关于如何快速高效实现这个功能的建议。
非常感谢每一个花时间来回答的人!
2 个回答
2
URL的正则表达式可能长这样:
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 %}
显然,这只是一个简单的例子。比如,你可能还想检查一下接下来是否有图片。
希望这对你有帮助。