def add_review(request, wine_id): wine = get_object_or_404(Wine, pk=wine_id) form = ReviewForm(request.POST) if form.is_valid(): rating = form.cleaned_data['rating'] comment = form.cleaned_data['comment'] user_name = request.user.username review = Review() review.wine = wine review.user_name = user_name review.rating = rating review.comment = comment review.pub_date = datetime.datetime.now() review.save() update_clusters() # Always return an HttpResponseRedirect after successfully dealing # with POST data. This prevents data from being posted twice if a # user hits the Back button. return HttpResponseRedirect( reverse('reviews:wine_detail', args=(wine.id, ))) return render(request, 'reviews/wine_detail.html', { 'wine': wine, 'form': form })
def post(self, confid): user = users.get_current_user() if not user: login_url = users.create_login_url(self.request.url) self.redirect(login_url) return # get the conference if confid.startswith('new:'): confid = confid[4:] conference = Conference.get_by_id(confid) # check if the user is an admin if user.email() not in conference.reviewers: self.response.out.write("You are not authorized") return # get proposal id & proposal proposal_id = long(self.request.get('proposal_id')) proposal = Proposal.get_by_id(id=proposal_id, parent=conference.key) if not proposal: self.response.out.write("No proposal found for this id (" + str(proposal_id) + ")") return # get existing review by this user review = Review.get_by_id(id=user.email(), parent=proposal.key) if not review: review = Review(id=user.email(), parent=proposal.key) # store value for the review review.comment = self.request.get('comment') if self.request.get('rating'): review.rating = int(self.request.get('rating')) # store in Data Store review.put() # redirect to get self.redirect(self.request.url)
def review(request): logged_in = request.user.is_authenticated() courselist = Course.objects.all().values() proflist = Faculty.objects.all().values() if not logged_in: raise Http404 elif request.method == "GET": y = date.today().year return render( request, 'templates/home2/reviewcourse.html', { 'user': request.user, 'title': "Coursereview - Reviews", 'time': range(y, y - 4, -1), "clist": courselist, "plist": proflist, 'reviewNavClass': "active" }) elif request.method == "POST": userReview = Review(reviewer=request.user, createdTime=datetime.now()) courseID = request.POST.get('course').split("-") item = courseID[0].replace(" ", "") courseTaken = item.encode('ascii', 'ignore') userReview.course = Course.objects.get(courseID=courseTaken) #TODO : insert using facultyID instead of name userReview.faculty = Faculty.objects.get( name=request.POST.get('faculty')) userReview.yearTaken = request.POST.get("yearTaken") userReview.creditsTaken = int(request.POST.get("creditsTaken")[0]) userReview.semTaken = request.POST.get("semTaken") #userReview.upvotes=0 #reviws and criteria userReview.easeOfScoring = request.POST.get("easeOfScoring") userReview.workload = request.POST.get("workload") userReview.easeOfContent = request.POST.get("easeOfContent") userReview.industryApplication = request.POST.get( "industryApplication") userReview.interesting = request.POST.get("interesting") userReview.qualityTeaching = request.POST.get("qualityTeaching") userReview.relevance = request.POST.get("relevance") userReview.technicality = request.POST.get("technicality") userReview.projectBurden = request.POST.get("projectBurden") userReview.comment = request.POST.get("comment") if request.POST.get("anonymous") == "True": userReview.anon = "True" ##False by default userReview.save() return HttpResponseRedirect('/rthanks/') else: raise Http404
def review(request): logged_in = request.user.is_authenticated() courselist = Course.objects.all().values() proflist = Faculty.objects.all().values() if not logged_in: raise Http404 elif request.method == "GET": y = date.today().year return render(request, 'templates/home2/reviewcourse.html', {'user': request.user, 'title': "Coursereview - Reviews", 'time': range(y, y - 4, -1), "clist": courselist, "plist": proflist, 'reviewNavClass':"active"}) elif request.method == "POST": userReview = Review(reviewer=request.user, createdTime=datetime.now()) courseID = request.POST.get('course').split("-") item = courseID[0].replace(" ", "") courseTaken = item.encode('ascii', 'ignore') userReview.course = Course.objects.get(courseID = courseTaken) #TODO : insert using facultyID instead of name userReview.faculty = Faculty.objects.get(name=request.POST.get('faculty')) userReview.yearTaken = request.POST.get("yearTaken") userReview.creditsTaken = int(request.POST.get("creditsTaken")[0]) userReview.semTaken = request.POST.get("semTaken") #userReview.upvotes=0 #reviws and criteria userReview.easeOfScoring = request.POST.get("easeOfScoring") userReview.workload = request.POST.get("workload") userReview.easeOfContent = request.POST.get("easeOfContent") userReview.industryApplication = request.POST.get("industryApplication") userReview.interesting = request.POST.get("interesting") userReview.qualityTeaching = request.POST.get("qualityTeaching") userReview.relevance = request.POST.get("relevance") userReview.technicality = request.POST.get("technicality") userReview.projectBurden = request.POST.get("projectBurden") userReview.comment = request.POST.get("comment") if request.POST.get("anonymous")=="True": userReview.anon = "True" ##False by default userReview.save() return HttpResponseRedirect('/rthanks/') else: raise Http404
def test_review_name_as_a_string(self): review = Review() review.comment = 'Create a Name' self.assertEqual('Create a Name', str(review))