def create_news(): if current_user: form = NewsForm() if form.validate_on_submit(): article = Articles() article.title = form.title.data article.heading = form.heading.data article.content = form.content.data article.category = form.category.data[0] article.likes = 0 article.dislikes = 0 if request.files["file"]: file = request.files["file"] article.image = current_user.username + secure_filename( file.filename) f = open( current_app.config['UPLOAD_FOLDER'] + current_user.username + file.filename, 'wb') f.write(file.read()) f.close() else: article.image = "nophoto.jpg" current_user.article.append(article) db.session.merge(current_user) db.session.commit() return redirect('/') return render_template('news_create.html', title='Добавление новости', form=form)
def art_add(): rul = str(request.url_rule) if rul[5:7] == 'li': rul = 'list' form = ArticleAddFrom() if form.validate_on_submit(): data = form.data if data['logo']: # 保存上传的封面 # 获取文件名 file = form.logo.data.filename # 起一个文件名 file = str(uuid.uuid4()) + os.path.splitext(file)[-1] # 查看有没有保存上传文件的目录,如果没有则自动新建 up_dir = os.path.join(app.config['BASE_DIR'], 'static/uploads/') if not os.path.exists(up_dir): os.makedirs(up_dir) # 存储文件 form.logo.data.save(up_dir + file) else: file = '' # 在文章数据库中写入数据 art = Articles() art.title = data['title'] art.category = data['category'] # 获取用户的id user = Users.query.filter_by(account=session['account']).first() art.uid = user.id art.content = data['content'] art.logo = file db.session.add(art) db.session.commit() return redirect(url_for('home.art_list')) return render_template('home/art_add.html', title=session['account'] + '的博客', rul=rul, form=form)