将变量从Jinja传递到数据库

时间:2015-11-25 19:49:05

标签: python sqlite jinja2 web.py

我试图找出一种方法来传递带有webpy的动态网址,该网址会为Jinja模板提供有关所传递信息的信息。具体来说,我有一个项目数据库,应该能够获取URL中的任何项目ID,并使用有关该项目的更多信息呈现模板。

为了解决问题,我为了演示目的而硬编码了值1043374545,但是我希望一旦这个初始问题得到解决,这条线就会变得动态。

urls = ('/1043374545', 'view_item')

class view_item:
    def GET(self, itemID):
        item_info = sqlitedb.detailInfo(request)
        return render_template('view_item.html', item = item_info)

截至目前,我将问题与将值1043374545传递到view_item函数相关的事情隔离开来。关于如何将URL中的动态数字传递给view_item的任何想法?

1 个答案:

答案 0 :(得分:0)

简单地说:

urls = (('/([0-9]*)', 'view_item'),)

[0-9] *会告诉webpy只接受“/”后的数字。
然后你可以在你的GET函数中使用该值,它将在你的GET参数中指定的itemID下。

class view_item:
    def GET(self, itemID):
        item_info = sqlitedb.detailInfo(itemID)
        return render_template('view_item.html', item = item_info)

查看此链接了解更多详情: http://webpy.org/cookbook/url_handling