def post(self): """Edit Artilce.""" data = self.request.data(title='', tag='', category='', \ raw_content='', old_tag='', created_at='') created_at = data.created_at title = data.title old_tag = data.old_tag tag = data.tag category = data.category raw_content = data.raw_content content = (markdown2.markdown(raw_content)).encode('utf-8') u_id = self.get_current_user() admin = User.get_by_primary_key(u_id) created_at_now = int(time.time()) # new article if not created_at: article = Article(title=title,content=content,\ raw_content=raw_content,category=category, \ author=admin.name, created_at=created_at_now) article.insert() new_article = Article.select_one('created_at=?', created_at_now) article_id = new_article.id # tag tag_d = Tag.select_one('tag_name=?', tag) # tag doesn't exists if not tag_d: new_tag = Tag(tag_name=tag) new_tag.insert() get_tag = Tag.select_one('tag_name=?', tag) tag_id = get_tag.id # tag exists else: tag_id = tag_d.id article_tag = ArticleTag(article_id=article_id, tag_id=tag_id) article_tag.insert() # update old article else: article = Article(title=title, content=content, \ raw_content=raw_content, author=admin.name, \ category=category, created_at=created_at_now) article.update('created_at=?', created_at) new_article = Article.select_one('created_at=?', created_at_now) article_id = new_article.id old_tag = Tag.select_one('tag_name=?', old_tag) new_tag = Tag(tag_name=tag) other_article_tag = ArticleTag.select_all('tag_id=?', old_tag.id) # other article doesn't have this article if len(other_article_tag) >= 1: tag_id = old_tag.id new_tag.update('id=?', tag_id) # other article has this tag else: new_tag.insert() get_tag = Tag.select('tag_name=?', tag) tag_id = get_tag.id article_tag = ArticleTag(tag_id=tag_id) article_tag.update('article_id=?', article_id) self.redirect('/admin/articles')
def add_tags(blog_id,tags): if not tags: return if not tags[0]: return for tag in tags: t=Tag.find_by('where name=?',tag) if t: t = t[0] if not t: t = Tag(name=tag) t.insert() bt = BlogTag(blog_id=blog_id,tag_id=t.id) tag_count_add(t) bt.insert() logging.info("######add tag %s----%s" % (blog_id,tag))
def add_tags(blog_id, tags): if not tags: return if not tags[0]: return for tag in tags: t = Tag.find_by('where name=?', tag) if t: t = t[0] if not t: t = Tag(name=tag) t.insert() bt = BlogTag(blog_id=blog_id, tag_id=t.id) tag_count_add(t) bt.insert() logging.info("######add tag %s----%s" % (blog_id, tag))
def create_tag(): body = request.get_json() if not body or not body.get('name'): abort(400) try: tag = Tag(body.get('name')) tag.insert() return jsonify({ 'success': True, 'tag': tag.format() }) except BaseException: abort(422)