图片用提交文件的方式上传那怎样提交到数据库里呢
来源:5-6 网易新闻数据新增
oldbang
2018-04-20
def add():
form=NewsForm()
if form.validate_on_submit():
new_obj=News(
title = form.title.data,
content = form.content.data,
types=form.types.data,
img=form.img.data
)
db.session.add(new_obj)
db.session.commit()
return redirect(url_for('admin'))
return render_template('admin/add.html',form=form)是再到new_obj里再添加一个img_name或者img_url吗?
或者再写个对象new_db 里面保留new_obj前面几项仅对img修改只把图片的名字或者url存进数据库
下面就提交db.session.add(new_db)

页面是这样但是点提交没有任何反应 是否要要用flask_uploads实现
form:
class NewsForm(FlaskForm):
title = StringField(label='新闻标题', validators=[DataRequired('请输入标题')],
description="请输入标题",
render_kw={"required":"required","class":"form-control"})
content = TextAreaField(label='新闻内容',validators=[DataRequired('请输入标题')],
description='请输入内容',
render_kw={"required":"required","class":"form-control"})
types=SelectField('新闻类型',
choices=[('推荐', '推荐'), ('百家', '百家'), ('本地', '本地'), ('图片', '图片')],
render_kw={'class': 'form-control'})
img=FileField(label='新闻图片',validators=[FileAllowed(['jpg','png'],'只能上传图片'),
FileRequired('文件未选择')])
submit = SubmitField('提交')写回答
1回答
-
NavCat
2018-04-20
贴一下你的form 代码,也可以参考这个:
https://flask-wtf.readthedocs.io/en/stable/form.html#module-flask_wtf.file
上传文件我们只会存储文件的存储路径到数据库,不会直接将文件存到数据库的,其他的像上传文档、上传视频也是一样的
012018-04-20
Python操作三大主流数据库-MySQL+MongoDB+Redis
一次实战同时掌握Python操作MySQL,MongoDB,Redis 三大数据库使用技巧
2024 学习 · 376 问题
相似问题