def edit_question(request, question_id): status = [] question = get_object_or_404(Question, pk=question_id) form = QuestionForm(instance=question); if request.method == 'POST': form = QuestionForm(request.POST, instance=question) if form.is_valid(): form.save() status.append(('Success!', 'label-success')) else: status.append(("Something's wrong. :(", "label-danger")) if not request.user.is_staff and request.user != question.author: raise Http404 return render(request, 'questiondb/edit_question.html', {'form': form, 'status': status})
def add_question(request): # List of success/failure messages to return status = [] form = QuestionForm() if request.method == 'POST': form = QuestionForm(request.POST) if form.is_valid(): form.instance.author = request.user form.instance.pub_date = timezone.now() form.save() status.append(('Success!', 'label-success')) form = QuestionForm() else: status.append(("Something's wrong. :(", "label-danger")) return render(request, 'questiondb/add_question.html', {'form': form, 'status': status})