def list(post_type): publish_status_display_list = [ PUBLISH_FSM_DEFINE.STATE.DRAFT, PUBLISH_FSM_DEFINE.STATE.UNPUBLISHED, PUBLISH_FSM_DEFINE.STATE.PUBLISHED, PUBLISH_FSM_DEFINE.STATE.TRASH ] # for pre-sort content = {} if not is_valid_post_type(post_type): return redirect(url_for('.list', post_type='blog')) site = get_current_site() queryset = Post.query.filter_by(site=site, type=post_type) for publish_status in publish_status_display_list: count = queryset.filter_by(publish_status=publish_status).count() if count == 0: continue content[publish_status] = { 'count': count, 'list': queryset.filter_by(publish_status=publish_status).order_by( desc('published_time')).all(), } set_navbar(level1=post_type) return render_template("rpadmin/post/list.html", post_type=post_type, content=content)
def post_list(type): """""" if not is_valid_post_type(type): return #!!! site = get_current_request_site() posts = Post.query.filter_by(site=site, type=type).order_by(desc('publish_date')).all() return render_template("rp/site_admin/post_list.html", posts=posts, post_type=type)
def post_new(type): """""" if not is_valid_post_type(type): return #!!! user = User.query.filter_by(id=current_user.id).first() if user is None: return #!!! site = get_current_request_site() post = Post(author=user, site=site, type=type) db.session.add(post) db.session.commit() return redirect(url_for('.post_edit', uuid=post.uuid))
def new(post_type): """""" if not is_valid_post_type(post_type): return user = User.query.filter_by(id=current_user.id).first() if user is None: return site = get_current_site() post = Post(author=user, site=site, type=post_type) db.session.add(post) db.session.commit() return redirect(url_for('.edit', post_id=post.id))