Преглед на файлове

[search] Do not convert to string multivalue fields

Now escapes the list of values.
There is only one level of nesting in multivalue fields.
Romain Rigaux преди 10 години
родител
ревизия
5838f00912
променени са 2 файла, в които са добавени 43 реда и са изтрити 0 реда
  1. 2 0
      apps/search/src/search/models.py
  2. 41 0
      apps/search/src/search/tests.py

+ 2 - 0
apps/search/src/search/models.py

@@ -806,6 +806,8 @@ def augment_solr_response(response, collection, query):
     for field, value in doc.iteritems():
     for field, value in doc.iteritems():
       if isinstance(value, numbers.Number):
       if isinstance(value, numbers.Number):
         escaped_value = value
         escaped_value = value
+      elif isinstance(value, list): # Multivalue field
+        escaped_value = [smart_unicode(val, errors='replace') for val in value]
       else:
       else:
         value = smart_unicode(value, errors='replace')
         value = smart_unicode(value, errors='replace')
         escaped_value = escape(value)
         escaped_value = escape(value)

Файловите разлики са ограничени, защото са твърде много
+ 41 - 0
apps/search/src/search/tests.py


Някои файлове не бяха показани, защото твърде много файлове са промени