Fix some product search issues

This commit is contained in:
Kuroshini 2019-10-16 14:11:07 +03:00
parent bff533e7d5
commit 5a014ca7fe
2 changed files with 8 additions and 2 deletions

View File

@ -39,7 +39,8 @@ class ProductSubtypeDocumentSerializer(serializers.Serializer):
id = serializers.IntegerField()
name_translated = serializers.SerializerMethodField()
get_name_translated = lambda obj: get_translated_value(obj.name)
def get_name_translated(self, obj):
return get_translated_value(obj.name)
class WineRegionCountryDocumentSerialzer(serializers.Serializer):
@ -64,6 +65,9 @@ class WineRegionDocumentSerializer(serializers.Serializer):
name = serializers.CharField()
country = WineRegionCountryDocumentSerialzer(allow_null=True)
def get_attribute(self, instance):
return instance.wine_region if instance and instance.wine_region else None
class WineColorDocumentSerializer(serializers.Serializer):
"""Wine color ES document serializer,"""
@ -211,7 +215,7 @@ class ProductDocumentSerializer(DocumentSerializer):
"""Product document serializer"""
tags = TagsDocumentSerializer(many=True)
subtypes = ProductSubtypeDocumentSerializer(many=True)
subtypes = ProductSubtypeDocumentSerializer(many=True, allow_null=True)
wine_region = WineRegionDocumentSerializer(allow_null=True)
wine_colors = WineColorDocumentSerializer(many=True)
product_type = ProductTypeDocumentSerializer(allow_null=True)

View File

@ -89,6 +89,8 @@ class EstablishmentDocumentViewSet(BaseDocumentViewSet):
search_fields = {
'name': {'fuzziness': 'auto:2,5',
'boost': 4},
'transliterated_name': {'fuzziness': 'auto:2,5',
'boost': 3},
'description': {'fuzziness': 'auto:2,5'},
}
translated_search_fields = (