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)
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)