fix transfer review text
This commit is contained in:
parent
9d816ade6b
commit
8b194f8324
|
|
@ -2,10 +2,10 @@ from pprint import pprint
|
||||||
|
|
||||||
from django.db.models import Q
|
from django.db.models import Q
|
||||||
|
|
||||||
from product.models import Product
|
|
||||||
from account.models import User
|
from account.models import User
|
||||||
from account.transfer_data import STOP_LIST
|
from account.transfer_data import STOP_LIST
|
||||||
from establishment.models import Establishment
|
from establishment.models import Establishment
|
||||||
|
from product.models import Product
|
||||||
from review.models import Inquiries as NewInquiries, Review
|
from review.models import Inquiries as NewInquiries, Review
|
||||||
from transfer.models import Reviews, ReviewTexts, Inquiries, GridItems, InquiryPhotos
|
from transfer.models import Reviews, ReviewTexts, Inquiries, GridItems, InquiryPhotos
|
||||||
from transfer.serializers.grid import GridItemsSerializer
|
from transfer.serializers.grid import GridItemsSerializer
|
||||||
|
|
@ -38,7 +38,7 @@ def transfer_reviews():
|
||||||
establishment_id__in=list(establishments),
|
establishment_id__in=list(establishments),
|
||||||
).values('id', 'reviewer_id', 'aasm_state', 'created_at', 'establishment_id', 'mark', 'vintage')
|
).values('id', 'reviewer_id', 'aasm_state', 'created_at', 'establishment_id', 'mark', 'vintage')
|
||||||
|
|
||||||
serialized_data = ReviewSerializer(data=list(queryset.values()), many=True)
|
serialized_data = ReviewSerializer(data=list(queryset), many=True)
|
||||||
if serialized_data.is_valid():
|
if serialized_data.is_valid():
|
||||||
serialized_data.save()
|
serialized_data.save()
|
||||||
else:
|
else:
|
||||||
|
|
@ -48,17 +48,23 @@ def transfer_reviews():
|
||||||
def transfer_text_review():
|
def transfer_text_review():
|
||||||
reviews = Review.objects.filter(old_id__isnull=False).values_list('old_id', flat=True)
|
reviews = Review.objects.filter(old_id__isnull=False).values_list('old_id', flat=True)
|
||||||
queryset = ReviewTexts.objects.filter(
|
queryset = ReviewTexts.objects.filter(
|
||||||
review_id__in=list(reviews),
|
review_id__in=list(reviews)
|
||||||
).exclude(
|
).exclude(
|
||||||
Q(text__isnull=True) | Q(text='')
|
text__iregex=r'[\s[ \t\n\r\f]*]+'
|
||||||
|
).exclude(
|
||||||
|
text__isnull=True
|
||||||
|
).exclude(
|
||||||
|
text__iexact=''
|
||||||
).values('review_id', 'locale', 'text')
|
).values('review_id', 'locale', 'text')
|
||||||
|
|
||||||
serialized_data = ReviewTextSerializer(data=list(queryset.values()), many=True)
|
serialized_data = ReviewTextSerializer(data=list(queryset)[20000:30000], many=True)
|
||||||
if serialized_data.is_valid():
|
if serialized_data.is_valid():
|
||||||
serialized_data.save()
|
serialized_data.save()
|
||||||
else:
|
else:
|
||||||
pprint(f"ReviewTextSerializer serializer errors: {serialized_data.errors}")
|
pprint(f"ReviewTextSerializer serializer errors: {serialized_data.errors}")
|
||||||
|
|
||||||
|
|
||||||
|
def make_en_text_review():
|
||||||
for review in Review.objects.filter(old_id__isnull=False):
|
for review in Review.objects.filter(old_id__isnull=False):
|
||||||
text = review.text
|
text = review.text
|
||||||
if text and 'en-GB' not in text:
|
if text and 'en-GB' not in text:
|
||||||
|
|
@ -106,7 +112,6 @@ def transfer_inquiry_photos():
|
||||||
|
|
||||||
|
|
||||||
def transfer_product_reviews():
|
def transfer_product_reviews():
|
||||||
|
|
||||||
products = Product.objects.filter(
|
products = Product.objects.filter(
|
||||||
old_id__isnull=False).values_list('old_id', flat=True)
|
old_id__isnull=False).values_list('old_id', flat=True)
|
||||||
|
|
||||||
|
|
@ -130,6 +135,7 @@ data_types = {
|
||||||
# transfer_languages,
|
# transfer_languages,
|
||||||
transfer_reviews,
|
transfer_reviews,
|
||||||
transfer_text_review,
|
transfer_text_review,
|
||||||
|
make_en_text_review,
|
||||||
],
|
],
|
||||||
'inquiries': [
|
'inquiries': [
|
||||||
transfer_inquiries,
|
transfer_inquiries,
|
||||||
|
|
|
||||||
|
|
@ -103,6 +103,9 @@ class ReviewTextSerializer(serializers.Serializer):
|
||||||
'new_text': self.get_text(data),
|
'new_text': self.get_text(data),
|
||||||
'review': self.get_review(data),
|
'review': self.get_review(data),
|
||||||
})
|
})
|
||||||
|
data.pop('review_id')
|
||||||
|
data.pop('locale')
|
||||||
|
data.pop('text')
|
||||||
return data
|
return data
|
||||||
|
|
||||||
def create(self, validated_data):
|
def create(self, validated_data):
|
||||||
|
|
@ -117,7 +120,8 @@ class ReviewTextSerializer(serializers.Serializer):
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def get_text(data):
|
def get_text(data):
|
||||||
locale = data['locale'] or 'en-GB'
|
locale = data['locale'] or 'en-GB'
|
||||||
return {locale: data['text']}
|
text = data['text']
|
||||||
|
return {locale: text}
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def get_review(data):
|
def get_review(data):
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user