Parcourir la source

fix an error, app raises an error when review was created without no-null value

Mohidul Islam il y a 5 ans
Parent
commit
a1b08e103f
1 fichiers modifiés avec 10 ajouts et 3 suppressions
  1. 10 3
      review/review_utils.py

+ 10 - 3
review/review_utils.py

@@ -111,8 +111,10 @@ def insert_review_into_database(reviews, loc):
     '''
     for rev in reviews:
         review_id = rev.get('reviewId')
-        # Check the review already exists in database then We don't need to store again.
-        review, created = Review.objects.get_or_create(pk=review_id)
+        try:
+            review = Review.objects.get(pk=review_id)
+        except Review.DoesNotExist:
+            review = Review(review_id=review_id)
         review.comment = rev.get('comment')
         review.create_time = rev.get('createTime')
         review.update_time = rev.get('updateTime')
@@ -120,12 +122,17 @@ def insert_review_into_database(reviews, loc):
         reviewer = rev.get('reviewer')
         review.reviewer_name = reviewer.get('displayName')
         review.reviewer_photo = reviewer.get('profilePhotoUrl')
+        review.location = loc
         review_reply = rev.get('reviewReply')
         # Check if it is already  replied.
         if review_reply:
             replied_text = review_reply.get('comment')
             create_time = review_reply.get('updateTime')
-            review.reply = Reply.objects.create(replied_text=replied_text, create_time=create_time)
+
+            review.reply = Reply.objects.create(
+                replied_text=replied_text,
+                create_time=create_time
+                )
         else:
             review.reply = None
         review.save()