题
我使用它,并有一个静态网页获取的形式,与约30选框。用户选择的各种框,并点击,搜索,结果从一个数据库是返回到同一页上在一个表中。然而,所有框有被清除,因为是无国籍者。
什么是最简单的解决方案"记住"的状态的框?我已经看过django文档,但在例子仅仅使用一个变量和一个如果对于一个单一的文本的形式。当然,我没必要检查如果每个框设在querydict?此外,我的形式是定创建的,而不是使用django形式。
最后,我计划使用请求的网页,并只能更新该表,并将解决这个问题,但是我不知道,如果这将引入许多更多,例如回按钮不作为以前的搜索。
解决方案
"什么是最简单的解决方案"记住"的状态的框?"
网交易都是无国籍者。
有几种常见方式来实现的状态。
会议。如果你的用户登录在,他们有一个会议。商店的东西在他们的会话。他后进入会议。然后可以将这种检索,在以后的新形式回到他们。
饼干。会议使用的饼干。你可以使用的饼干。你有两个选择在这里。
放式框信息成的cookie。送下来的反应。检查cookie在每个请求,所以你知道是什么种子的形式。
把一届会议的关键在cookie。这是什么决不会给你的。不实现这样的自己。
查询串的网址。你有相同的两种选择作为与饼干。无论是使设置一个大老base64string或通过一个ID,矗立在为本届会议。
其他提示
有方法可以解决后退按钮问题(散列标记和诸如此类的东西附加到URL)。但是,我一直做到了这一点的方式是通过这一点。从本质上讲,我会通过复选框在POST数组,然后,当你去让他们,只是做一个循环,这将使你需要的所有箱子,以及对证POST,看看它了检查。除此之外,我不知道。
使用GET?好。进入复选框以同样的方式访问文本框的数据。
request.GET中[ 'yourfield']
使用打印staments检查在GET的可用信息。
打印request.GET中[ 'yourfield']
如果您使用的是Form对象,那么你可以只通过构造函数的请求,并用它来完成。如果你正在做手工,你就必须做一些finangling与会话。