From 48826a9ad90cca4f4b9de10510eb6f90d3cd63e2 Mon Sep 17 00:00:00 2001 From: BaiJiangJie <32935519+BaiJiangJie@users.noreply.github.com> Date: Fri, 16 Aug 2019 16:33:05 +0800 Subject: [PATCH] =?UTF-8?q?[Update]=20=E4=BC=98=E5=8C=96=E5=88=87=E6=8D=A2?= =?UTF-8?q?=E7=BB=84=E7=BB=87=E6=97=B6=E9=87=8D=E5=AE=9A=E5=90=91=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E9=80=BB=E8=BE=91=20(#3133)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * [Update] 优化切换组织时重定向页面逻辑 * [Update] 优化切换组织时重定向页面逻辑 2 --- apps/common/utils/common.py | 2 +- apps/orgs/views.py | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/apps/common/utils/common.py b/apps/common/utils/common.py index 572820c49..0000d35b4 100644 --- a/apps/common/utils/common.py +++ b/apps/common/utils/common.py @@ -12,7 +12,7 @@ import copy import ipaddress -UUID_PATTERN = re.compile(r'[0-9a-zA-Z\-]{36}') +UUID_PATTERN = re.compile(r'\w{8}(-\w{4}){3}-\w{12}') ipip_db = None diff --git a/apps/orgs/views.py b/apps/orgs/views.py index e7bf9fc62..757129a7f 100644 --- a/apps/orgs/views.py +++ b/apps/orgs/views.py @@ -4,6 +4,7 @@ from django.http import HttpResponseForbidden from django.views.generic import DetailView, View from .models import Organization +from common.utils import UUID_PATTERN class SwitchOrgView(DetailView): @@ -17,10 +18,11 @@ class SwitchOrgView(DetailView): request.session['oid'] = oid host = request.get_host() referer = request.META.get('HTTP_REFERER') - if referer.find(host) != -1: - return redirect(referer) - else: - return redirect('index') + if referer.find(host) == -1: + return redirect(reverse('index')) + if UUID_PATTERN.search(referer): + return redirect(reverse('index')) + return redirect(referer) class SwitchToAOrgView(View):