def edit_news(id): form = NewsForm() if request.method == "GET": session = db_session.create_session() news = session.query(News).filter(News.id == id, News.user == current_user).first() if news or current_user.is_admin: form.title.data = news.title form.description.data = news.description form.content.data = news.content form.tags.data = news.tags form.is_private.data = news.is_private else: abort(404) if form.validate_on_submit(): session = db_session.create_session() news = session.query(News).filter(News.id == id, News.user == current_user).first() if news or current_user.is_admin: news.title = form.title.data news.content = form.content.data news.is_private = form.is_private.data session.commit() return redirect('/') else: abort(404) return render_template('adding.html', form=form)
def index(): form = NewsForm() if form.validate_on_submit(): n1 = News(title=form.title.data, body=form.body.data) db.session.add(n1) db.session.commit() return redirect(url_for('index')) news_list = News.query.all() return render_template('index.html', news_list=news_list, form=form)
def add(): """ 新增新闻 """ form = NewsForm() if form.validate_on_submit(): n1 = News(title=form.title.data, content=form.content.data, img_url=form.img_url.data, news_type=form.news_type.data) n1.save() flash("新增成功") return redirect(url_for('admin')) return render_template("admin/add.html", form=form)
def news_post(): form = NewsForm() if form.validate_on_submit(): news = News(view = 0, title = form.title.data,url = form.url.data,hot = False) try: news.put() flash(u'저장 성공', 'success') return redirect(url_for('new_list')) except CapabilityDisabledError: flash(u'App Engine Datastore is currently in read-only mode.', 'failure') return redirect(url_for('new_list')) return render_template('news_post.html', form=form,title= request.args.get('title'), url= request.args.get('url'))
def add_news(): form = NewsForm() if form.validate_on_submit(): session = db_session.create_session() news = News() news.title = form.title.data news.content = form.content.data news.is_private = form.is_private.data current_user.news.append(news) session.merge(current_user) session.commit() return redirect('/blog') return render_template('add_news.html', title='News add', form=form)
def news_post(): form = NewsForm() if form.validate_on_submit(): news = News(view = 0, title = form.title.data,url = form.url.data,hot = False) try: news.put() search.Index(name=_INDEX_NAME).add(create_doc(news.key.id(),news.title,news.url,news.post_time)) flash(u'저장 성공', 'success') return redirect(url_for('new_list')) except CapabilityDisabledError: flash(u'App Engine Datastore is currently in read-only mode.', 'failure') return redirect(url_for('new_list')) return render_template('news_post.html', form=form,title= request.args.get('title'), url= request.args.get('url'),counter=counter.load_and_get_count("view"),acc=ACC)
def add(): # 新增 form = NewsForm() if form.validate_on_submit(): # 获取数据 -> 保存数据 new_obj = News(title=form.title.data, content=form.content.data, types=form.types.data, image=form.image.data, created_at=datetime.now()) db.session.add(new_obj) db.session.commit() return redirect(url_for('admin')) return render_template('admin/add.html', form=form)
def update(pk): ''' 后台更新新闻 ''' obj = News.objects.filter(pk=pk, is_valid=True).first_or_404() # obj = News.objects.get_or_404(pk=pk, is_valid=True) form = NewsForm(obj=obj) if form.validate_on_submit(): obj.title = form.title.data obj.content = form.content.data obj.news_type = form.news_type.data obj.updated_at = datetime.now() obj.save() flash("修改成功") return redirect(url_for('admin')) return render_template('admin/update.html', form=form)
def update(pk): ''' 修改新闻数据 也可通过update进行逻辑删除,更改对象的is_valid属性 ''' new_obj = News.objects.get_or_404(pk=pk) form = NewsForm(obj=new_obj) if form.validate_on_submit(): new_obj.title = form.title.data new_obj.content = form.content.data new_obj.news_type = form.news_type.data new_obj.img_url = form.image.data new_obj.save() flash('修改新闻成功') return redirect(url_for('admin')) #返回修改html,获取用户输入的表单信息 return render_template('admin/update.html', form=form)
def update(pk): """ 新增新闻 """ obj = News.objects.filter(pk=pk).first() if obj is None: abort(404) form = NewsForm(obj=obj) if form.validate_on_submit(): obj.title = form.title.data obj.content = form.content.data obj.news_type = form.news_type.data obj.save() flash("修改成功") return redirect(url_for('admin')) return render_template("admin/update.html", form=form)
def add(): ''' 新增新闻数据 ''' form = NewsForm() if form.validate_on_submit(): # 从前台表单中获取表单值组成的对象 new_obj = News( title=form.title.data, content=form.content.data, news_type=form.news_type.data, img_url=form.image.data, ) new_obj.save() flash('新增新闻成功') return redirect(url_for('admin')) return render_template('admin/add.html', form=form)
def update(pk): ''' 后台更新新闻 ''' news_obj = query.get_news_from_id(pk) if news_obj is None: abort(404) form = NewsForm(data=news_obj) if form.validate_on_submit(): news_obj['title'] = form.title.data news_obj['content'] = form.content.data news_obj['news_type'] = form.news_type.data news_obj['updated_at'] = datetime.now().strftime("%Y-%m-%d %H:%M:%S") query.update_news(pk, news_obj) flash("修改成功") return redirect(url_for('admin')) return render_template('admin/update.html', form=form)
def update(pk): # 新闻后台数据修改 news_obj = News.query.get(pk) # 如果没有数据,则返回 if not news_obj: return redirect(url_for('admin')) form = NewsForm(obj=news_obj) if form.validate_on_submit(): # 获取数据 news_obj.title = form.title.data news_obj.content = form.content.data # 保存数据 db.session.add(news_obj) db.session.commit() return redirect(url_for('admin')) return render_template('admin/update.html', form=form)
def update(pk): """ add news """ obj = News.query.get(pk) if obj is None: abort(404) form = NewsForm(obj=obj) if form.validate_on_submit(): obj.title = form.title.data obj.content = form.content.data obj.news_type = form.news_type.data db.session.add(obj) db.session.commit() flash("Successfully modified") return redirect(url_for('admin')) return render_template("admin/update.html", form=form)
def add(): ''' 后台增加新闻 ''' news_obj = {} form = NewsForm() if form.validate_on_submit(): news_obj['title'] = form.title.data news_obj['content'] = form.content.data news_obj['img_url'] = form.img_url.data news_obj['is_valid'] = 1 news_obj['news_type'] = form.news_type.data news_obj['created_at'] = datetime.now().strftime("%Y-%m-%d %H:%M:%S") news_obj['updated_at'] = datetime.now().strftime("%Y-%m-%d %H:%M:%S") query.add_news_with_trans(news_obj) flash("修改成功") return redirect(url_for('admin')) return render_template('admin/add.html', form=form)
def news_add(): form = NewsForm() form.created_at.data = datetime.now() try: if form.validate_on_submit(): news = News(form.title.data, form.content.data, form.types.data, form.img_url.data, form.author.data, form.view_count.data, form.created_at.data, form.is_valid.data, form.is_recommend.data) db.session.add(news) db.session.commit() flash('添加新闻成功!') return redirect(url_for('admin.news_detail')) except: flash('添加新闻失败!', category='error') return render_template('admin/news_add.html', form=form)
def add(): form = NewsForm() if form.validate_on_submit(): n1 = News( title=form.title.data, content=form.content.data, image=form.image.data, type=form.type.data, author=form.author.data, created_at=datetime.now(), ) db.session.add(n1) db.session.commit() flash('新增成功') return redirect(url_for('admin')) return render_template('admin/add.html', form=form)
def add(): ''' 后台增加新闻 ''' form = NewsForm() """ validate_on_submit() call validate() only if the form is submitted. This is a shortcut for form.is_submitted() and form.validate(). """ if form.validate_on_submit(): print(form.title.data) new_obj = News(title=form.title.data, content=form.content.data, img_url=form.img_url.data, news_type=form.news_type.data) new_obj.save() flash('新增成功') return redirect(url_for('admin')) return render_template('admin/add.html', form=form)
def add(): """ 新增新闻 """ form = NewsForm() if form.validate_on_submit(): n1 = News( title=form.title.data, content=form.content.data, img_url=form.img_url.data, news_type=form.news_type.data, created_at=datetime.now(), updated_at=datetime.now(), ) db.session.add(n1) db.session.commit() flash("Successfully added!") return redirect(url_for('admin')) return render_template("admin/add.html", form=form)
def add_post(): form = NewsForm() if form.validate_on_submit(): session = db_session.create_session() news = News() news.title = form.title.data news.description = form.description.data news.content = form.content.data news.tags = form.tags.data news.is_private = form.is_private.data date = datetime.date.today() news.created_date = date current_user.news.append(news) session.merge(current_user) session.commit() return redirect("/") return render_template('adding.html', form=form)
def update(pk): # 更新一条新闻 new_obj = News.query.get(pk) # 如果没有取到数据,跳转后台管理页面 if not new_obj: return redirect(url_for('admin')) # 修改前的记录渲染出来 form = NewsForm(obj=new_obj) if form.validate_on_submit(): # 获取数据 new_obj.title = form.title.data new_obj.content = form.content.data new_obj.types = form.types.data # 更改记录 db.session.add(new_obj) db.session.commit() return redirect(url_for('admin')) return render_template('admin/update.html', form=form)
def update(pk): '''修改新闻信息''' new_obj = News.query.get(pk) # 如果没有数据,则返回404 Not Found if new_obj is None: abort(404) form = NewsForm(obj = new_obj) if form.validate_on_submit(): new_obj.title = form.title.data new_obj.content = form.content.data new_obj.types = form.news_type.data new_obj.image = form.image.data db.session.add(new_obj) db.session.commit() flash('修改成功') return redirect(url_for('admin')) return render_template('admin/update.html', form = form)
def add(): """ 新增新闻 """ form = NewsForm() news_obj = {} # 空的字典保存前台的表单数据 if form.validate_on_submit(): """ 这个和更新新闻相反, 我们空的一个form来让用户新增,然后提交获得表单保存到数据库,重定向到首页""" news_obj['title'] = form.title.data news_obj['content'] = form.content.data news_obj['news_type'] = form.news_type.data news_obj['created_at'] = datetime.now().strftime( '%Y-%m-%d %H:%M:%S') # 由于是新增,所以保存新增和更新时间 news_obj['updated_at'] = datetime.now().strftime('%Y-%m-%d %H:%M:%S') news_obj['is_valid'] = True news_obj['img_url'] = form.image.data query.add_news(news_obj) flash('新增成功') return redirect(url_for('admin')) return render_template("admin/add.html", form=form)
def update(pk): ''' 后台新闻修改 ''' obj = News.query.get(pk) # 为给定的状态码引发HTTPExeception if obj is None: abort(404) form = NewsForm(obj=obj) if form.validate_on_submit(): obj.title = form.title.data obj.content = form.content.data obj.type = form.type.data # 将修改后的对象提交事务 db.session.add(obj) db.session.commit() flash("修改成功") # 跳转到首页 return redirect(url_for('admin')) return render_template('admin/update.html', form = form)
def add(): '''新闻新增''' form = NewsForm() if form.validate_on_submit(): # 获取用户输入表达中的数据 # 保存数据 n1 = News( title = form.title.data, content = form.content.data, image = form.image.data, types = form.news_type.data, created_at = datetime.now(), is_valid = 1) db.session.add(n1) db.session.commit() # 文字提示flash flash('新增成功!') return redirect(url_for('admin')) #新增加入数据库之后重定向到首页 return render_template('admin/add.html', form = form)
def add(): ''' 新增新闻数据 ''' form = NewsForm() if form.validate_on_submit(): # 获取数据 new_obj = News(title=form.title.data, content=form.content.data, author=form.author.data, types=form.types.data, image=form.image.data, created_at=datetime.now(), is_valid=True) # 保存数据 db.session.add(new_obj) db.session.commit() # 文字提示 # flash return redirect(url_for('admin')) # 跳转到后台首页 return render_template('admin/add.html', form=form)
def update(pk): ''' 修改新闻数据 ''' new_obj = News.query.get(pk) # 如果没有数据,则返回 if not new_obj: # TODO 使用Flash进行文字提示用户 return redirect(url_for('admin')) form = NewsForm(obj=new_obj) if form.validate_on_submit(): # 获取数据 new_obj.title = form.title.data new_obj.content = form.content.data new_obj.types = form.types.data new_obj.image = form.image.data # 保存数据 db.session.add(new_obj) db.session.commit() return redirect(url_for('admin')) # 跳转到后台首页 return render_template('admin/update.html', form=form)
def update(pk): # 更新 new_obj = News.query.get(pk) if not new_obj: return redirect(url_for('admin')) # 将表单默认显示的值传入 form = NewsForm(obj=new_obj) if form.validate_on_submit(): # 获取数据 -> 保存数据 new_obj.title = form.title.data new_obj.content = form.content.data new_obj.types = form.types.data new_obj.image = form.image.data new_obj.created_at = datetime.now() db.session.add(new_obj) db.session.commit() return redirect(url_for('admin')) return render_template('admin/update.html', form=form, pk=pk)
def admin_do_add(): ''' 新增新闻信息 ''' form = NewsForm() if form.validate_on_submit(): # 获取数据 new_obj = News(title=form.title.data, content=form.content.data, types=form.types.data, image=form.image.data, author=form.author.data, created_at=datetime.now(), view_count=0, is_valid=True) # 保存数据 db.session.add(new_obj) db.session.commit() # 文字提示flash消息闪现 flash('添加成功') return redirect('/admin/')
def admin_update(pk): '''后台新闻列表''' new_obj = News.query.get(pk) if not new_obj: return redirect(url_for('admin')) form = NewsForm(obj=new_obj) if form.validate_on_submit(): new_obj.title = form.title.data new_obj.content = form.content.data new_obj.types = form.types.data new_obj.author = form.author.data new_obj.created_at = datetime.now() # 保存数据 db.session.add(new_obj) db.session.commit() # 文字提示flash消息闪现 flash('修改成功') return redirect('/admin/') return render_template('admin/update.html', new_obj=new_obj, form=form)
def add(): ''' 后台新闻新增''' form = NewsForm() if form.validate_on_submit(): # 验证数据后获取数据 # 保存数据 new_obj = News( title=form.title.data, content=form.content.data, type=form.type.data, image=form.image.data, created_at=datetime.now(), is_valid=1 ) db.session.add(new_obj) db.session.commit() # 文字提示 flash("新增成功") # Returns a response object(a WSGI application) that, if called, redirects the client to the target location return redirect(url_for('admin')) else: flash("请输入新闻数据") return render_template('admin/add.html', form=form)
def update(pk): """ 更新时间 """ news_obj = query.get_news_from_id(pk) if news_obj is None: abort(404) """ form = NewsForm() render_template("admin/update.html", form=form) 提交到update.html中,则新闻标题、新闻内容、新闻类型都默认是空的 我们需要让用户在原来的数据上修改(get方式请求),因此先查询到这个数据,然后在将form对象提交到数据库(post方式) """ form = NewsForm(data=news_obj) if form.validate_on_submit(): ''' 用户点击提交按钮,修改数据库对应新闻数据 重定向到首页 ''' news_obj['title'] = form.title.data news_obj['content'] = form.content.data news_obj['news_type'] = form.news_type.data news_obj['updated_at'] = datetime.now().strftime('%Y-%m-%d %H:%M:%S') query.update_news(pk, news_obj) flash('修改成功') return redirect(url_for('admin')) # 用户点击按钮,返回给前台数据展示update.html return render_template("admin/update.html", form=form)