之前链接回访问的网址

时间:2013-07-08 13:22:32

标签: python django url

我有一张我用这个链接显示的城市卡片:

/<country_name>/<city_name>

我可以从两个不同的链接访问此卡:

/<country_name>/
/<country_name>/pick-cities

当卡片被打开时,我想返回之前访问过的网址(两个下面的一个)。 我已经使用了一个目标,我会影响到一个人:

target = request.META['HTTP_REFERER']

但问题是当我在卡片上做出一些动作然后request.META['HTTP_REFERER']成为卡片的网址! (如JavaScript中的history.back()) 还有其他方法可以链接回访问过的网址吗?

1 个答案:

答案 0 :(得分:0)

您可以在会话中保存request.META['HTTP_REFERER']并在需要时使用它。

只有当您访问与当前网址不同的网址时才存储它,因此您在编辑时不会保存它。

这样的东西
def city_card(request):
    # do your stuff
    if not request.session.get('REFERRER') and request.session['REFERRER'] != request.path
        request.session['REFERRER'] = request.path

    # use request.session['REFERRER'] when you want to redirect there

注意:您可能必须使用request.path以外的其他内容进行实际网址验证。