@login_required
def post_create(request):
form = PostForm(request.POST or None)
if request.method == "POST":
if form.is_valid():
post = form.save(False)
post.author = request.user
form.save()
return redirect('posts:profile', request.user)
context = {
'form': form
}
return render(request, 'posts/create_post.html', context)
@login_required
def post_edit(request, post_id):
post = get_object_or_404(Post, pk=post_id)
if request.user != post.author:
return redirect('posts:post_detail', post_id=post.pk)
form = PostForm(
request.POST or None,
files=request.FILES or None,
instance=post
)
if form.is_valid():
post = form.save(commit=False)
post.author = request.user
post.save()
return redirect('posts:post_detail', post_id=post.pk)
context = {
'form': form,
'is_edit': True,
}
return render(request, 'posts/create_post.html', context)