Ce que cet article vous apporte est un exemple de code pour afficher les informations de la base de données sur une page Web Python basée sur flask_sqlalchemy. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.
La page Web affiche les informations de la base de données
Utilisez le flask_sqlalchemy que nous venons d'apprendre pour afficher les données dans la table de la base de données sur la page Web.
Avant de commencer à exécuter le programme, assurez-vous que les opérations de création de tables et d'utilisateurs ont été exécutées dans la base de données. Pour plus de détails, voir Description du lien.
# 模板文件templates/list.html {% extends 'base.html' %} {% block title %} 显示 {% endblock %} {% block newcontent %}
用户编号 | 用户名称 | 用户密码 | 用户创建时间 | 用户会员类型 |
---|---|---|---|---|
{{ user.id }} | {{ user.name }} | {{ user.passwd }} | {{ user.add_time }} | {{ user.role.name }} |
# 数据库操作文件zaj_sql_models.py from datetime import datetime from flask_bootstrap import Bootstrap from flask_wtf import FlaskForm from flask_sqlalchemy import SQLAlchemy from flask import Flask import pymysql from sqlalchemy import desc app = Flask(__name__) db = SQLAlchemy(app) app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://root:sheen@localhost/zaj_sql' app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True bootstrap = Bootstrap(app) # class Student(db.Model): # __tablename__ = 'students' # sid = db.Column(db.SMALLINT,primary_key=True) # sname = db.Column(db.String(50)) # sage = db.Column(db.Integer) class User(db.Model): id = db.Column(db.Integer,autoincrement=True,primary_key=True) name = db.Column(db.String(50),unique=True) passwd = db.Column(db.String(100)) add_time = db.Column(db.DATETIME,default=datetime.now()) gender = db.Column(db.BOOLEAN,default=True) role_id = db.Column(db.INTEGER,db.ForeignKey('role.id')) def __repr__(self): return '<user:>' %(self.name) class Role(db.Model): id = db.Column(db.INTEGER,autoincrement=True,primary_key=True) name = db.Column(db.String(50),unique=True) users = db.relationship('User',backref='role') # 给Role模型添加users属性 # backref 是定义反向引用,可以通过User.role访问User里面的数据 def __repr__(self): return '<role:>' % (self.name) if __name__ =='__main__': # 1. 创建数据库表 db.drop_all() db.create_all() # 2. 创建role数据库表数据 role_1 = Role(name='超级会员') role_2 = Role(name='普通会员') db.session.add(role_1) db.session.add(role_2) db.session.commit() # # # 3. 添加user表内数据,100个用户,50个为超级会员,50个为普通会员 for i in range(1,13): if i%2 == 0: u = User(name='sheen'+str(i),passwd='sheen',role_id=1) db.session.add(u) else: u = User(name='star'+str(i),passwd='star',role_id=2) db.session.add(u) db.session.commit()</role:></user:>
#主程序 from flask import Flask,render_template from zaj_sql_models import app from zaj_sql_models import User @app.route('/') def index(): return render_template('index.html') @app.route('/list/') def list(): users = User.query.all() return render_template('list.html',users=users) if __name__ == '__main__': app.run()
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!