def blog_category_create(request): user_id = authenticated_userid(request) category = Category() form = BlogCategoryCreateForm(request.POST) if request.method == 'POST' and form.validate(): form.populate_obj(category) category.slug = urlify(category.name) DBSession.add(category) return HTTPFound(location=request.route_url('blog')) return {'user_id': user_id, 'action': 'create', 'form': form, }
def blog_category_edit(request): user_id = authenticated_userid(request) category_id = int(request.params.get('id', 1)) category = Category.by_id(category_id) if not category: return HTTPNotFound() form = BlogCategoryUpdateForm(request.POST, category) if request.method == 'POST' and form.validate(): form.populate_obj() DBSession.add(category) return HTTPFound(location=request.route_url('blog')) return {'user_id': user_id, 'action': 'edit', 'form': form, }
def blog_create(request): user_id = authenticated_userid(request) blog_post = Post() form = BlogCreateForm(request.POST) if not blog_post: return HTTPNotFound() if request.method == 'POST' and form.validate(): form.populate_obj(blog_post) # Add Tags tags = request.params['tags'] update_tags(tags, blog_post) DBSession.add(blog_post) return HTTPFound(location=request.route_url('blog')) return {'form': form, 'action': 'create', 'user_id': user_id}
def by_id(cls, post_id): return DBSession.query(Post).filter(cls.id == post_id).first()
def get_recent(cls): return DBSession.query(Post).order_by(sa.desc(cls.created))[:5]
def get_posts_by_tag(cls, tag): # return DBSession.query(Post).join(Post.tags).filter(sa.func.lower(Tag.name) == tag) return DBSession.query(Post).join(Post.tags).filter(Tag.slug == tag)
def all(cls): return DBSession.query(Post).order_by(sa.desc(cls.created))
def get_all(cls): return DBSession.query(Tag).order_by(sa.asc(cls.name))
def get_by_name(cls, tag): return DBSession.query(Tag).filter(cls.name == tag).first()
def get_posts_by_category_slug(cls, category_slug): return DBSession.query(Post).join(Category).filter(Category.slug == category_slug)
def get_posts_by_category(cls, category): return DBSession.query(Post).join(Category).filter(sa.func.lower(Category.name) == category)
def by_id(cls, category_id): return DBSession.query(Category).filter(cls.id == category_id).first()
def by_name(cls, name): return DBSession.query(User).filter(User.name == name).first()
def all(cls): return DBSession.query(User).order_by(sa.desc(cls.name))