def test(self): checkin_actor = TransactionManager.get_checkin_actor() board = Board.objects.create(title="공지사항") post1 = Post() post1.title = "공지사항 제 1번" post1.content = "첫번째 공지사항입니다." post1.author = checkin_actor post1.board = board post1.save() assert board.posts.count() == 1 assert post1.board == board assert post1.title == "공지사항 제 1번" assert post1.content == "첫번째 공지사항입니다." assert post1.author == checkin_actor assert post1.created_date.date() == post1.published_date.date() post2 = Post() post2.title = "공지사항 제 2번" post2.content = "두번째 공지사항입니다." post2.author = checkin_actor post2.board = board post2.save() assert board.posts.count() == 2 assert post2.board == board assert post2.title == "공지사항 제 2번" assert post2.content == "두번째 공지사항입니다." assert post2.author == checkin_actor assert post2.created_date.date() == post2.published_date.date()
def post_add(): form = PostForm() form.cid.choices = [(v.id, v.title) for v in db.session.query(Classify.id, Classify.title).all()] form.sid.choices = [(v.id, v.name) for v in Style.query.all()] form.author.data = session.get('nikename') # 表单是否验证成功 if form.validate_on_submit(): form.tags.data = tags_handle(form.tags.data) form.content.data = content_file_handle(form.content.data) post = field_obj_set(Post(),form.data) db.session.add(post) db.session.commit() flash('添加成功!', category='ok') return redirect(url_for('admin.post_add')) title = '新建文章' data = dict(title=title, tags=Tag.tags(), form=form) return render_template('admin/post.form.html', **data)
def POST(self, post_id=None, action='add'): self.init_data(post_id, 'update') #switch to "update" and lose "edit" state form = self.form_class() if form.validates(): active = True if form.get('active').value else False title = form.get('title').value body = form.get('body').value if action == 'edit': post_data = self.post post_data.title=title post_data.body=body else: post_data = Post(title=title, body=body,) post_data.active=active post_data.put() return web.seeother('/post/'+post_data.slug+'-'+str(post_data.key().id()), absolute=True) context['form'] = form return render_template('add.html', **context)