def create_topic(request, forum, topic=None): from forms import TopicForm, PostForm, AddPostForm, EditPostForm from django import forms forum = get_object_or_404(Forum, active=True, slug=forum) if request.method == "GET": if topic: topic = get_object_or_404(Topic, id=topic) apf = EditPostForm(topic=topic, instance=topic.get_body) else: apf = AddPostForm() return render(request, "forum/create_topic.html", { "forum": forum, "apf": apf, }) if request.method == "POST": ip = request.META.get('HTTP_X_FORWARDED_FOR', None) post_form_kwargs = { "forum": forum, "user": request.user, "ip": ip, } apf = AddPostForm(request.POST, **post_form_kwargs) if apf.is_valid(): url = reverse('forum:forum', args=[ str(forum.slug), ]) apf.save() return redirect(url) else: return HttpResponse("Invalid")
def edit(post_id): try: oid = ObjectId(post_id) except: return redirect(url_for("newpost")) post = db.posts.find_one({"_id": oid}) if request.method == 'GET': form = EditPostForm() form.post_id.data = post_id form.title.data = post['title'] form.content.data = post['body'] return render_template("write.html", form=form, post_id=post_id) else: form = NewPostForm(request.form) if form.validate(): title = form.title.data body = form.content.data md = Markdown() html = md.convert(gfm(body)) db.posts.update( {"_id": oid}, {"$set": { "title": title, "body": body, "html": html }}) return redirect(url_for("home")) else: return render_template("write.html", form=form, post_id=post_id)
def edit_post(key): post = ndb.Key(urlsafe=key).get() form = EditPostForm(obj=post) if form.validate_on_submit(): form.save() flash(u'文章修改成功') return go_delay_redirect(url_for("admin.post.edit", key=key)) return render_template('admin/new_or_edit_post.html', form=form, post=post, new=False)
def edit_post(postid, content, return_where): if not permission_to_edit_post(session['userid'], postid): flash("You don't have permission to edit this content.") return redirect(url_for('error')) edit_form = EditPostForm(request.form) if edit_form.validate() and request.method == 'POST': edit_post_controller(postid, edit_form.content.data) if return_where == 'userpage': # get userid of page where post belongs to userpage = get_page(postid).ownerid return redirect(url_for('user_page', userid=userpage)) elif return_where == 'grouppage': grouppage = get_page(postid).groupid return redirect(url_for('group_page', groupid=grouppage)) else: return redirect(url_for('post_page', postid=postid)) else: edit_form = EditPostForm() edit_form.content.data = content return render_template('pages/editpost.html', form=edit_form, content=content)
def edit_post(post_id): args = dict(request.args) session = db_session.create_session() post = session.query(Post).filter(Post.id == post_id).first() if post.author.id == current_user.id: form = EditPostForm(obj=post) if form.validate_on_submit(): post.title = form.title.data post.text = form.text.data now_datetime = datetime.datetime.now() post.editing_date = now_datetime post.editing_date_norm_view = date_to_normal_view(now_datetime) session.commit() return redirect(args['back_url']) return render_template('add_edit_post_page.html', form=form, add=False) return redirect('/')
def edit_post(id): form = EditPostForm() task_to_edit = Post.query.get_or_404(id) if request.method == 'POST': task_to_edit.sub_title = form.sub_title.data task_to_edit.content = form.content.data db.session.commit() flash('updated successfully', 'success') return redirect( url_for('account', sub_title=task_to_edit.sub_title, content=task_to_edit.content)) elif request.method == 'GET': form.sub_title.data = task_to_edit.sub_title form.content.data = task_to_edit.content return render_template('edit_post.html', form=form)
def update_post(post_id): """Edit form for user's posts.""" post = Post.query.get(post_id) if "user_id" not in session: flash("🚫 You must be logged in to edit posts.") return redirect("/") form = EditPostForm(obj=post) if form.validate_on_submit(): post.title = form.title.data post.photo_url = form.photo_url.data post.purchase_url = form.purchase_url.data post.caption = form.caption.data db.session.commit() flash(f"New post: {post.title} updated. 👍🏻") return redirect("/myposts") return render_template("posts/post_edit.html", form=form, post=post)
def edit_blog_post(post_id): user = current_user post = Post.query.filter_by(id=post_id).first_or_404() # Check that the user logged in is the post's author, if not redirect to index if (post.author.id != user.id): flash("Only the author of this post can edit it.") return redirect('/index') title = 'Edit Blog Post' header = 'Edit a Blog Post' form = EditPostForm(obj=post) if form.validate_on_submit(): post.title = form.title.data post.content = form.content.data if form.update_ts.data: post.timestamp = datetime.datetime.now() try: db.session.commit() flash('Post "' + form.title.data + '" updated!') return redirect('/index') except e: flash(e.message) return redirect('/edit_blog_post/' + str(post_id)) form.populate_obj(post) return render_template('edit_blog_post.html', user=user, title=title, header=header, form=form, post=post)
def edit_post(board_id, post_id): """ Edit or add post due date """ board = Board.query.get_or_404(board_id) if not g.user or board.user_id != g.user.id: flash("Access unauthorized.", "danger") return redirect("/") post = Post.query.get_or_404(post_id) form = EditPostForm(obj=post) if form.validate_on_submit(): post.complete_by = form.complete_by.data db.session.add(post) db.session.commit() return redirect(f"/boards/{board_id}") else: notifications = get_notifications(g.user.id) return render_template('edit_post.html', form=form, post=post, notifications=notifications)