Эх сурвалжийг харах

修复登录和忘记密码查询数据问题

locky 2 жил өмнө
parent
commit
bd1b512b54

+ 13 - 6
Controller/UserController.py

@@ -1507,10 +1507,14 @@ class v2forgetPwdCodeView(TemplateView):
         ses = SesClassObject()
         now_time = datetime.datetime.utcnow().replace(tzinfo=utc).astimezone(utc)
         region_country = users['region_country']
-        lang_id = LanguageModel.objects.filter(lang=lang).values('id')
-        region_qs = CountryLanguageModel.objects.filter(country_id=region_country, language_id=lang_id[0]['id']).values(
-            'country_name')
+        # 语言不存在返回英文
+        language_qs = LanguageModel.objects.filter(lang=lang).values('id')
+        if not language_qs.exists():
+            language_qs = LanguageModel.objects.filter(lang='en').values('id')
+        region_qs = CountryLanguageModel.objects.filter(country_id=region_country, language_id=language_qs[0]['id']).\
+            values('country_name')
         res['region'] = region_qs[0]['country_name'] if region_qs.exists() else ''
+
         if not number or number == '0':
             res['status'] = 0
             user_qs.update(last_login=now_time, language=lang)
@@ -2133,7 +2137,10 @@ class v3LoginView(TemplateView):
 
         now_time = datetime.datetime.utcnow().replace(tzinfo=utc).astimezone(utc)
         region_country = users['region_country']
-        lang_id = LanguageModel.objects.filter(lang=lang).values('id')
+        # 语言不存在返回英文
+        language_qs = LanguageModel.objects.filter(lang=lang).values('id')
+        if not language_qs.exists():
+            language_qs = LanguageModel.objects.filter(lang='en').values('id')
 
         # 更新最后登录时间
         if not number or number == '0':
@@ -2147,8 +2154,8 @@ class v3LoginView(TemplateView):
             else:   # 一致
                 res['status'] = 0
                 user_qs.update(last_login=now_time, language=response.lang, region_country=number)
-        region_qs = CountryLanguageModel.objects.filter(country_id=region_country, language_id=lang_id[0]['id']).values(
-            'country_name')
+        region_qs = CountryLanguageModel.objects.filter(country_id=region_country, language_id=language_qs[0]['id']).\
+            values('country_name')
 
         res['rid'] = users['role__rid']
         res['roleName'] = users['role__roleName']