예제 #1
0
def create():
    if request.method == 'POST':
        form = PostForm(request.form)
        if form.validate():
            post = form.save_post(Post(author=current_user))
            db.session.add(post)
            db.session.commit()
            flash('Post "%s" created successfully.' % post.title, 'success')
            return redirect(url_for('posts.detail', slug=post.slug))
    else:
        form = PostForm()
    return render_template('posts/create.html', form=form)
예제 #2
0
def edit(slug):
    post = get_post_or_404(slug, author=None)
    if current_user == post.author:
        if request.method == 'POST':
            form = PostForm(request.form, obj=post)
            if form.validate():
                post = form.save_post(post)
                db.session.add(post)
                db.session.commit()
                flash('Post "%s" has been saved.' % post.title, 'success')
                return redirect(url_for('posts.detail', slug=post.slug))
        else:
            form = PostForm(obj=post)
    else:
        return redirect(url_for('posts.detail', slug=post.slug))

    return render_template('posts/edit.html', post=post, form=form)