【问题标题】:Output request parameter by template按模板输出请求参数
【发布时间】:2011-04-30 02:20:19
【问题描述】:

说没有简单的标签只是写一些http get是正确的吗 查询参数? 如果只需要打印一个 http get 查询参数,例如?q=w 我可以直接使用带有模板标签的值 q 还是需要副本 请求处理程序中的值? 是否可以更直接地从 http get 传递值(所有值) 模板? 因为复制每个值似乎重复相同的处理很多 次

template_values = {'q':self.request.get('q'),...

应该可以迭代参数集。你能推荐吗 那个或任何其他解决方案?

【问题讨论】:

    标签: django google-app-engine


    【解决方案1】:

    您根本不需要这样做。请求在模板上下文中自动可用(只要您启用 request context processor 并使用 RequestContext) - 或者您可以直接在上下文中传递请求对象。

    request.GET 是一个类似字典的对象,所以一旦你有请求,你就可以直接在模板中获取 GET 值:

    {{ request.GET.q }}
    

    【讨论】:

    • if条件下如何添加?
    • 有没有办法在模板中添加一个可选的默认值?例如 request.GET.get("q", True)。
    • @Root 在检索值之前使用{% if 'q' in request.GET %}。如果您想在q 不存在的情况下使用默认值,您可以标记{% else %}
    • 对于以后的 Django 版本(可能 > 2.0),这似乎是 {{ request.GET.urlencode }}
    猜你喜欢
    • 2013-01-06
    • 2012-09-26
    • 1970-01-01
    • 2019-02-08
    • 2012-01-15
    • 1970-01-01
    • 2019-10-06
    • 1970-01-01
    • 2014-01-26
    相关资源
    最近更新 更多