def new_post(): form = PostForm() if form.validate_on_submit(): if form.image.data: picture = post_img(form.image.data) post = Post(title=form.title.data, content=form.content.data, anonymous=form.anonymous.data, image=picture, author=current_user) db.session.add(post) db.session.commit() flash('Your Post Has been Created!', 'success') return redirect(url_for('home')) else: post = Post(title=form.title.data, content=form.content.data, anonymous=form.anonymous.data, author=current_user) db.session.add(post) db.session.commit() flash('Your Post Has been Created!', 'success') return redirect(url_for('home')) return render_template('create_post.html', title='New Post', form=form, legend='New Post')
def home(): form = PostForm() if form.validate_on_submit(): if form.image.data: picture = save_picture(form.image.data) post = Post(title=form.title.data, content=form.content.data, image=picture, author=current_user) else: post = Post(title=form.title.data, content=form.content.data, author=current_user) db.session.add(post) db.session.commit() flash('Your Post Has been Created!', 'success') return redirect(url_for('home')) page = request.args.get('page', 1, type=int) posts = Post.query.order_by(Post.date_posted.desc()).paginate(per_page=50, page=page) users = User.query.all() if current_user.is_authenticated: image_file = url_for('static', filename='profile_pics/' + current_user.image_file) return render_template('home.html', title="Home", form=form, posts=posts, image_file=image_file, users=users) else: #return redirect(url_for('login')) return render_template('home.html', title="Home", posts=posts)
def update_post(post_id): post = Post.query.get_or_404(post_id) if post.author != current_user: abort(403) form = PostForm() if form.validate_on_submit(): post.title = form.title.data post.content = form.content.data db.session.commit() flash('Your post has been updated!', 'success') return redirect(url_for('post', post_id=post.id)) elif request.method == 'GET': form.title.data = post.title form.content.data = post.content return render_template('create_post.html', title='Update Post', form=form, legend='Update Post')