我正在制作一个用于保留绘画版画的小django应用程序。
客户访问此订购页面,填写一些信息(姓名,电子邮件,奉献等),选择他们要保留的打印号码,然后单击订单。点击后,我将我的django代码存储在一个新的OrderInfo对象中,并将HttpResponseRedirect调用到我的谢谢页面。
我希望这个谢谢页面包含OrderInfo中包含的一些确认详细信息(例如,谢谢你,{{name}},用于订购)。
我的第一个想法是在thekyou url中包含OrderInfo的ID,但这会让任何人访问OrderInfo以获取任何不适合隐私的ID。
您可以在此处查看演示:link
提前致谢!
答案 0 :(得分:5)
首先,确保显示敏感内容的所有视图都有@login_required
装饰器,并检查request.user
实际上是否有权访问所请求的信息。
现在,针对您的具体问题,您可以将OrderInfo
放入会话词典中。事实上,在那里复制整个对象可能比较方便,而不仅仅是ID。
另外,如果您希望允许未登录的用户执行所有操作,您仍需要以某种方式识别它们。再一次,最明显的方法是大量使用会话来跟踪用户。