def save_review_from_row(review_row): review= Review() userprofile = UserProfile.objects.get(id=review_row[1]) sake = Product.objects.get(id=review_row[2]) review.id = review_row[0] review.user = userprofile review.sake = sake review.rating = review_row[3] review.content = review_row[4] review.date = datetime.datetime.now() review.save()
def add_review(request, slug): user = request.user userprofile = UserProfile.objects.get(user=user) sake = get_object_or_404(Product, slug=slug) form = ReviewForm(request.POST, instance=userprofile) try: review_check = Review.objects.get(user=userprofile, sake=sake) except Review.DoesNotExist: pass else: messages.info(request, 'You have already written a review for this sake.') return HttpResponseRedirect(reverse('product', args=(slug, ))) if request.method == 'POST': form = ReviewForm(data=request.POST, instance=userprofile) if form.is_valid(): review = Review() content = form.cleaned_data['content'] rating = form.cleaned_data['rating'] review.user = userprofile review.content = content review.rating = rating review.date = datetime.now() review.sake = sake review.save() form.save() update_clusters(is_new_user=False) messages.success(request, "Thank you for your review!") return HttpResponseRedirect(reverse('product', args=(slug, ))) return render(request, 'reviews/add_review.html', { 'sake': sake, 'form': form })