flask怎样查询mysql并显示在页面上
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flask怎样查询mysql并显示在页面上相关的知识,希望对你有一定的参考价值。
1、用 Flask-SQLAlchemy(SQLAlchemy ORM 模块的 Flask 定制版)。这个在定义 schema、连接数据库、增删改查方面都给你提供极大的便利。2、Flask-SQLAlchemy 同时还提供一些诸如分页等功能。 参考技术A from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class Database(object):
def __init__(self, configure):
self.configure = configure
self.engine = create_engine(self.configure.mysql_SQLALCHEMY_URL)
self.Session = sessionmaker(bind=self.engine)
self.session = self.Session()
from sqlalchemy import Column, Integer, String, Sequence
class User(Base):
"""
user table
"""
__tablename__ = 'user'
id = Column(Integer, Sequence("USER_ID_SEQ"), primary_key=True)
username = Column(String(256), doc=u"用户名")
password = Column(String(256), doc=u"密码")
def __repr__(self):
return "<User(username='%s', password='%s', id='%s')" % (self.username, self.password, self.id)
使用sqlalchemy来连接mysql并且查询其中的user表的方法,你可以试试。
显示页面的话:
from flask import jsonify
@app.route("/")
def main():
db = Database(config)
result = db.session.query(User).filter_by(username="aa").first()
return jsonify("result":result)
会把结果显示在页面上,是以json方式显示的
python flask在html页面上显示图像[重复]
【中文标题】python flask在html页面上显示图像[重复]【英文标题】:python flask display image on a html page [duplicate] 【发布时间】:2018-03-28 20:54:54 【问题描述】:我正在尝试传递图像的文件名并将其呈现在模板上, 虽然我通过实际名称传递它并没有显示在页面上
@app.route('/', methods=['GET','POST'])
@app.route('/start', methods=['GET','POST'])
def start():
person_to_show = 'tim'
profilepic_filename = os.path.join(people_dir, person_to_show, "img.jpg")
return render_template('start.html',profilepic_filename =profilepic_filename )
例如:profilepic_filename = /data/tim/img.jpg 我试过了
profilepic_filename
<img src=" url_for('data', filename='tim/img.jpg') "></img>
我也试过了
<img src="profilepic_filename"></img>
两者都不起作用
【问题讨论】:
【参考方案1】:我在static
文件夹中创建了people_photo
,并放置了一个名为shovon.jpg
的图像。从application.py
,我将图像作为变量传递给模板,并在模板中使用img
标记显示它。
在application.py
:
from flask import Flask, render_template
import os
PEOPLE_FOLDER = os.path.join('static', 'people_photo')
app = Flask(__name__)
app.config['UPLOAD_FOLDER'] = PEOPLE_FOLDER
@app.route('/')
@app.route('/index')
def show_index():
full_filename = os.path.join(app.config['UPLOAD_FOLDER'], 'shovon.jpg')
return render_template("index.html", user_image = full_filename)
在index.html
:
<!DOCTYPE html>
<html>
<head>
<title>Index</title>
</head>
<body>
<img src=" user_image " >
</body>
</html>
输出:
【讨论】:
有没有其他人无法让它工作? pycharm 告诉我Process finished with exit code 0
但localhost:5000
没有显示任何图像
@frank, localhost:5000
只要程序保持运行状态就可用。可能有什么东西停止了程序,你得到了Process finished with exit code 0
。
我们如何显示来自 S3 链接的图像?任何帮助将不胜感激。
@vinitkantrod,它不在这个问题的范围内。如果您可以在 Flask 中创建一个关于 S3 存储桶图像使用的新问题,那就更好了。我认为未来的读者将会受益。
有没有办法使用子文件夹而不是静态文件夹并通过local ressource
错误?以上是关于flask怎样查询mysql并显示在页面上的主要内容,如果未能解决你的问题,请参考以下文章
java 怎样查询MYSQL数据库中的数据;根据id字段查询,获取id 对应的一行数据,并显示 在标签上。
在python3下怎样用flask-sqlalchemy对mysql数据库操作