Przeglądaj źródła

修复重复路径

peng 2 lat temu
rodzic
commit
175b7623f4
1 zmienionych plików z 10 dodań i 11 usunięć
  1. 10 11
      controller/LangArea.py

+ 10 - 11
controller/LangArea.py

@@ -270,30 +270,29 @@ class LangAreaView(TemplateView):
             # print(lkc)
             name = lkc['langkeyclassmodel__clazz__name']
             source = lkc['word_key']
+            localtion = {'filename': lkc['langlocationmodel__filename'], 'line': lkc['langlocationmodel__line']}
             hasClass = result.__contains__(name)
             if not hasClass:
-                result[name] = {source: {'source': source, 'translation': lkc['langvalmodel__word_val'], 'locations': [
-                    {'filename': lkc['langlocationmodel__filename'], 'line': lkc['langlocationmodel__line']}]}}
+                result[name] = {
+                    source: {'source': source, 'translation': lkc['langvalmodel__word_val'], 'locations': [localtion]}}
             else:
                 hasKey = result[name].__contains__(source)
                 if not hasKey:
                     result[name][source] = {'source': source, 'translation': lkc['langvalmodel__word_val'],
-                                            'locations': [
-                                                {'filename': lkc['langlocationmodel__filename'],
-                                                 'line': lkc['langlocationmodel__line']}]}
+                                            'locations': [localtion]}
                 else:
-                    result[name][source]['locations'].append({'filename': lkc['langlocationmodel__filename'],
-                                                              'line': lkc['langlocationmodel__line']})
+                    if localtion not in result[name][source]['locations']:
+                        result[name][source]['locations'].append(localtion)
         print(result)
         return result
 
     def get_area_language_search(self, id):
         result = {}
         lkc_qs = LangKeyModel.objects.filter(langvalmodel__la__id=id, project__id=4).values('word_key',
-                                                                             'searchtoolkeymodel__bk__name',
-                                                                             'langvalmodel__word_val',
-                                                                             'langlocationmodel__filename',
-                                                                             'langlocationmodel__line')
+                                                                                            'searchtoolkeymodel__bk__name',
+                                                                                            'langvalmodel__word_val',
+                                                                                            'langlocationmodel__filename',
+                                                                                            'langlocationmodel__line')
         for lkc in lkc_qs:
             # print(lkc)
             name = lkc['searchtoolkeymodel__bk__name']