Exemple #1
0
def add_idea(request):
    if request.method == 'GET': 
        return render(request, 'ideas/ideas/add.html')
    elif request.method == 'POST':
        idea_form = IdeaForm(request.POST)
        
        if idea_form.is_valid():
            new_idea = idea_form.save(commit=False)
            new_idea.user = request.user
            new_idea.save()
            idea_form.save_m2m()
            return redirect("idea", idea_id=new_idea.id)
        else: # needs to show the form with the errors
            return render(request, 'ideas/ideas/add.html',
                {'form': idea_form})
Exemple #2
0
def edit_idea(request, idea_id):
    idea = get_object_or_404(Idea, pk=idea_id)

    if request.user.id == idea.user.id:
        if request.method == 'GET':
            return render(request, 'ideas/ideas/edit.html', {'idea': idea})
        elif request.method == 'POST':
            edit_form = IdeaForm(request.POST)

            if edit_form.is_valid():
                temp = edit_form.save(commit=False)
                temp.id = idea.id
                idea.title = request.POST['title']
                idea.text = request.POST['text']
                idea.updated = timezone.now()
                idea.save()
                edit_form.save_m2m()
                return redirect('idea', idea_id=idea_id)
            else:
                return render(request, 'ideas/ideas/edit.html',
                {'idea': idea, 'form': edit_form})

    return HttpResponse("You don't have permission to edit this question")