如何在web.py模板中获取当前的URL或输入参数

时间:2018-09-26 22:30:27

标签: python-2.7 web.py

我有一个使用web.py设计的网页。我使用web.template.render()和HTML模板文件在此网页中绘制表格。

我将项目列表传递给此模板,并希望使用GET方法以及offsetcount参数(即http://mywebsite/records?offset=10&count=15)在不同的页面中显示数据。

我正在寻找一种方法来获取offsetcount的输入值以及 HTML模板文件中的当前网址,因此我将能够将链接放置到下一页和上一页。

1 个答案:

答案 0 :(得分:0)

模板获取的数据要么传递到其中(例如render.home(a, b, c)),要么作为全局变量(在定义渲染器时通过globals参数作为dict显式传递)。

通过在python中获取信息并将其传递到模板中,您的示例更容易实现。这使您可以错误检查值,提供默认值等。

因此,让您的GET()提取适当的信息并将其传递给模板:

class index(object):
    def GET(self):
        my_render.index(url=web.ctx.fullpath,
                        offset=web.input().offset, 
                        count=web.input().count())

==== index.html ====
$def with(url, offset, count)
<table>
   <tr><td>URL is: $url</td>
       <td>OFFSET is: $offset</td>
       <td>COUNT is: $count</td></tr>
</table>