def post(self, post_id=None): if post_id: abort(400) else: args = post_post_parser.parse_args(strict=True) user = User.verify_auth_token(args['token']) if not user: abort(401) new_post = Post(args['title']) new_post.user_id = user.id new_post.publish_date = datetime.datetime.now() new_post.text = args['text'] if args['tags']: for item in args['tags']: tag = Tag.query.filter_by(title=item).first() ##如果存在该标签,就添加 ##如果不存在,就先创建再添加 if tag: new_post.tags.append(tag) else: new_tag = Tag(item) new_post.tags.append(new_tag) db.session.add(new_post) db.session.commit() return new_post.id, 201
def new(type): form = PostForm() if form.validate_on_submit(): new_post = Post(form.title.data) new_post.text = form.text.data new_post.cover = form.cover.data new_post.publish_date = datetime.now() new_post.update_date = new_post.publish_date new_post.user_id = current_user.id new_post.type = type new_post.summary = form.summary.data new_post.video = form.video.data tagStrList = form.tags.data.split(',') for tagStr in tagStrList: tagStr = tagStr.strip() tag = Tag.query.filter_by(title=tagStr).first() if not tag: tag = Tag(tagStr) new_post.tags.append(tag) for photo_url in form.photos.data: if photo_url != '': photo = Photo(photo_url) new_post.photos.append(photo) db.session.add(new_post) db.session.commit() return redirect(url_for('blog.post', post_id=new_post.id)) form.type.data = type return render_template("edit_{}.html".format(type), form=form, type=type)
def post_article(): params = request.get_json() print params post = Post( title=params['title'], text=params['text'], publish_able=params['publishable'], tag_id=params['tagId']) post.user_id = g.userId erps = copy.deepcopy(error_response) db.session.add(post) try: db.session.commit() except BaseException: erps['error'] = '新建错误' return json.dumps(erps) erps['success'] = True return json.dumps(erps)
def post(self, post_id=None): if post_id: abort(400) else: args = post_post_parser.parse_args(strict=True) username = args['username'] password = args['password'] user = User.query.filter_by(username=username).first() if not user: abort(401) if not user.check_password(password): abort(401) new_post = Post() new_post.user_id = user.id new_post.title = args['title'] new_post.publish_date = datetime.datetime.now() new_post.text = args['text'] if args['tags']: for t_title in args['tags']: tag = Tag.query.filter_by(title=t_title).first() # Add the tag if it exists. If not make a new tag. if tag: new_post.tags.append(tag) else: new_tag = Tag() new_tag.title = t_title new_post.tags.append(new_tag) db.session.add(new_post) db.session.commit() return new_post.id, 201