【问题标题】:Pass variables to a "success" page after processing a form in Django在 Django 中处理表单后将变量传递给“成功”页面
【发布时间】:2011-08-05 03:51:46
【问题描述】:

是否有将上下文变量传递给重定向响应的方法?我想在用户提交表单后将他们重定向到成功页面,但我不希望成功页面只是一个静态 html 文件。我需要根据表单数据显示额外的信息。

我查看了this 问题,但那里提出的解决方案只是在相同的 url 处呈现不同的文件。我想重定向用户,以便在页面上点击刷新不会将重复的条目提交到应用程序中。

现在,我唯一能够成功使用的方法是重定向到一个 url,同时按照here 的描述传递 GET 变量。这看起来有点像黑客,只是想知道是否有更好的解决方案......

谢谢

【问题讨论】:

    标签: python django django-forms


    【解决方案1】:

    在我看来,你有三个选择:

    1. 在重定向中使用 GET 变量。
    2. 在会话中存储一些东西。
    3. 如果您使用提交的表单创建对象,请将该对象的 id 放入重定向 url 并在新视图中使用它。

    您遇到的限制是 http 是无状态的,而不是 django 固有的东西。

    【讨论】:

    • +1 以获得彻底的答案,会话对我来说应该可以正常工作。谢谢!
    【解决方案2】:

    如何将您的值存储在会话中,然后让重定向页面从那里获取值?

    【讨论】:

    • 太完美了!正是我想要的!谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-18
    • 1970-01-01
    • 1970-01-01
    • 2013-05-03
    • 1970-01-01
    • 2015-05-10
    • 1970-01-01
    相关资源
    最近更新 更多