匿名用户(无登录)会定向到目标网页,其中有一个按钮和文本字段,用于发布信息。
我希望将数据的行为发布与登陆页面的人联系起来。即知道帖子的目标网址不应该允许你发帖,它应该与很短的持续时间相关联。
我正在使用Django。
最简单或内置的方法是什么?
答案 0 :(得分:1)
如果您配置了会话存储,则可以将此信息存储在匿名用户的会话中。开始会议:
request.session["allow_post_until"] = datetime.datetime.now() + datetime.timedelta(...)
并检查它:
if not (request.session["allow_post_until"] and request.session["allow_post_until"] < datetime.datetime.now()):
raise PermissionDenied
如果您使用的是django 1.4并且不想配置会话存储,则可以使用签名cookie。如果要为用户启用会话,请使用适当的max_age设置cookie。当用户发布时,检查签名的cookie并检查其有效性。设置:
response.set_signed_cookie("mysession", "sessiondata", max_age=<session period in seconds>)
检查:
request.get_signed_cookie("mysession", max_age=<session period in seconds>)