コード例 #1
0
def modifyPost(request, slug):

    post = Post.objects.get(slug=slug)
    if request.user.username is not post.author:
        return redirect(f"/post/{{post.slug}}")

    if request.POST:
        form = PostForm(request.POST)
        if form.is_valid():
            title = form.cleaned_data['title']
            body = form.cleaned_data['body']
            post.title = title
            post.body = body
            post.save()
            return redirect(f'/post/{post.slug}')

    form = PostForm({'title': post.title, 'body': post.body})
    return render(request, 'editor.html', {'form': form})
コード例 #2
0
def editor(request):
    if request.POST:
        form = PostForm(request.POST)
        if form.is_valid():
            title = form.cleaned_data['title']
            author = request.user.username
            slug = ''.join(random.choice(string.ascii_letters + \
                           string.digits) for x in range(10))
            body = form.cleaned_data['body']
            pub_date = timezone.now()

            post = Post.objects.create(title=title,
                                       author=author,
                                       slug=slug,
                                       body=body,
                                       pub_date=pub_date)
            return redirect(f'/post/{slug}')

    form = PostForm()
    return render(request, 'editor.html', locals())