Django请求路径

时间:2010-07-01 08:04:35

标签: django

我一直在解决我的django项目的问题。问题是我有一个项目,它将为不同客户的用户检索数据。我需要知道一个观众来自哪里(request.path [我原来的解决方案])。我一直在寻找一些听起来接近我想做的不同选择,但我不确定最好的选择是什么,之前没有做过。

我的第一个选择是在urls.py中添加一个带有'tag'或'keyword'的url,然后在request.path中查找该标记/关键字,我将其添加为会话密钥。然后去获取数据。

我开始关注的是网站框架。阅读完文档后,我仍然对网站实际工作方式感到困惑,所以我不确定这是不是正确的选择。

另一个解决方案是使用中间件,这与使用网站框架的研究有关。

然后又有人谈到在apache中这样做。

有人可以帮助我指出正确的方向吗?

干杯,

Ť

2 个答案:

答案 0 :(得分:0)

您的问题并不完全清楚,但如果您在访问当前页面之前询问用户所在的网址,则可能需要request.META['HTTP_REFERRER']

在评论后修改

这将是非常坏主意。鉴于您可能同时处理多个请求,因此全局变量不安全。推荐人已经可以从请求中获得,可以在所有视图和模板中访问,因此我不知道中间件会给你什么。

答案 1 :(得分:0)

如果您需要知道用户从哪个URL到您的currrent页面,您应该检查REFERER http标头,可在request.META.get('HTTP_REFERER')中找到。 有关更多信息,请参阅http://docs.djangoproject.com/en/1.2/ref/request-response/#ref-request-response

但请注意,referer meta不是强制性的,可能因私人浏览或从URL栏直接访问页面而丢失。