Advertisement
Guest User

Untitled

a guest
Feb 5th, 2017
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.73 KB | None | 0 0
  1. from django.shortcuts import render, get_object_or_404, HttpResponse, HttpResponseRedirect
  2. from django.core.urlresolvers import reverse
  3. from django.shortcuts import redirect
  4. from django.utils import timezone
  5. from .forms import PostForm
  6. from .models import Post
  7.  
  8. def post_list(request):
  9.     posts = Post.objects.filter(published_date__lte=timezone.now()).order_by('published_date')
  10.     return render(request, 'blog/post_list.html', {'posts': posts})
  11. def post_detail(request, pk):
  12.     post = get_object_or_404(Post, pk=pk)
  13.     return render(request, 'blog/post_detail.html', {'post': post})
  14. def post_new(request):
  15.     if request.method == "POST":
  16.         form = PostForm(request.POST)
  17.         if form.is_valid():
  18.             post = form.save(commit=False)
  19.             post.author = request.user
  20.             post.published_date = timezone.now()
  21.             post.save()
  22.             return redirect('post_detail', pk=post.pk)
  23.  
  24.     else:
  25.         form = PostForm()
  26.     return render(request, 'blog/post_edit.html', {'form': form})
  27. def post_edit(request, pk):
  28.     post = get_object_or_404(Post, pk=pk)
  29.     if request.method == "POST":
  30.         form = PostForm(request.POST, instance=post)
  31.         if form.is_valid():
  32.             post = form.save(commit=False)
  33.             post.author = request.user
  34.             post.published_date = timezone.now()
  35.             post.save()
  36.             return redirect('post_detail', pk=post.pk)
  37.     elif request.method =="DELETE":
  38.         post.delete()
  39.         return redirect('blog/post_list.html', {'posts':posts})
  40.     else:
  41.         form = PostForm(instance=post)
  42.     return render(request, 'blog/post_edit.html', {'form': form})
  43. def about(request):
  44.     return render(request, 'blog/about.html')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement