<pre><code>def category_request_up_vote (request, pk):
category_request = get_object_or_404(CategoryRequests, pk=pk)
try:
if request.method == 'GET':
if CategoryRequests_Voter.objects.filter(voter=request.user, voted=category_request).exists():
messages.error(request, 'You already voted for this request.')
return redirect('category_request_detail', pk=category_request.pk)
else:
category_request.up_vote = F('up_vote') + 1
category_request.save()
CategoryRequests_Voter.objects.create(voter=request.user, voted=category_request)
messages.success(request, 'You have successfully Provided an Up-Vote for this Request')
return redirect('category_request_detail', pk=category_request.pk)
else:
messages.error(request, 'Uuups, something went wrong, please try again.')
return redirect('category_request_detail', pk=category_request.pk)
except:
messages.error(request, 'Uuups, something went wrong, please try again.')
return redirect('category_request_detail', pk=category_request.pk)
</code></pre>