def home(request): if request.user.is_authenticated(): context = {} form = QuestionForm(request.POST or None) context['form'] = form question_list = Question.objects.all() page = request.GET.get('page', 1) paginator = Paginator(question_list, 9) try: question_list = paginator.page(page) except PageNotAnInteger: question_list = paginator.page(1) except EmptyPge: question_list = paginator.page(paginator.num_pages) context['question_list'] = question_list if form.is_valid(): question_instance = form.save(commit=False) question_instance.question_by = request.user question_instance.save() context['form'] = QuestionForm(None) context['success_message'] = "Your Question has been posted!" return render(request, 'body/homeloggedin.html', context) return render(request, 'body/homeloggedin.html', context) return render(request, 'body/home.html', {})
def post(self, request): q = Question(author=request.user) form = QuestionForm(request.POST, instance=q) if form.is_valid(): form.save() return redirect(q) return render(request, 'qna/question_form.html')
def ask(request): if request.method == "POST": form = QuestionForm(request.POST) try: question = form.save(commit=False) question.user = request.user question.save() return redirect(question) except ValueError: return render(request, "qna/ask.html", {"error": True}) else: c = {} return render(request, "qna/ask.html", c)