用Flask做了一个图片展览的网站 遇到一个问题 在一个相册中 我点击了一个图片想要看这个图片的详细情况 然后 写了一个函数 是render_template到图片详细信息的页面,在函数中要怎么获得这个点击的图片的网址呢?用request的话应该怎么样做的?
|
alexrezitJul 4, 2013
1
ajax?
|
|
soluJul 4, 2013
2
能不能写成这样 <a href="imageinfo/imageid"><img src="....."/></a>
然后统一在imageinfo函数通过imageid处理 |
|
humiaozuzuJul 4, 2013
3
图片难道放static目录下吗?
|
|
4
@alexrezit
@solupro @humiaozuzu 图片是用又拍云托管的 所以是一个http的网址 相册中的是缩略图 url:.../gallery 然后 我想要在相册中点击这个图片之后 能够进入到了一个这张图片的详细页面 有原图 url比如说...gallery/01.jpeg 为了在这个详细页面显示原图 那么我要获得原图的地址 来给函数<a href="url_for{{ pic_detail }}"> 然后函数给html模板页面 我现在就是不知道怎么在html中获得img src的内容 |
|
7
|
|
tinypigJul 4, 2013
8
@shinerene
2L不是说的很清楚了么。。 <a href="{{url_for('pic_detail', pic_id=xx)}}"></a> 你在数据库里难道没有pic_id 对应图片地址么. 通过传递pic_id来判断 |
|
10
|
|
julyclydeJul 4, 2013
11
图片不需要POST
|
|
12
@julyclyde 额 那我这样写了之后模板里面是这样的
<a href = "url_for{{ 'pic_detail',pic_id=info.pic_id }}"><img src="blablabla"></a> .py文件里面是 @app.route('/gallery/<int:pic_id>') def pic_detail(pic_id): code here return render_template('pic_detail.html',pic_info = info) 可是当我点击图片的时候显示的是404 然后url是这样的: http://localhost:5000/url_for('pic_detail',%20'pic_num=info.pic_num') 问题到底出在哪里呢 |
|
ResetJul 4, 2013
14
@shinerene
<a href = "{{ url_for('pic_detail',pic_id=info.pic_id )}}"><img src="blablabla"></a> 语法错误,{{ url_for() }} |
|
julyclydeJul 4, 2013
15
你得先搞明白你要对外提供的URI是啥样的
展示页里有一句<img src=图片网址> 那么展示页输出的内容是HTML 而内嵌图片那个网址输出的是图片的数据流 你先把这俩规划好,写好URLRoute |
|
julyclydeJul 4, 2013
17
下次看看运行窗口输出的内容可能就能注意到了。把debug打开
|
|
chuangboJul 4, 2013
21
文档都没认真看过。
|