parent
792c9ec098
commit
bfca4f146a
@ -0,0 +1,74 @@
|
|||||||
|
# -*- encoding: utf-8 -*-
|
||||||
|
'''
|
||||||
|
@File : setup.py
|
||||||
|
@License : (C)Copyright 2018-2022
|
||||||
|
|
||||||
|
@Modify Time @Author @Version @Desciption
|
||||||
|
------------ ------- -------- -----------
|
||||||
|
2023/4/18 10:18 zart20 1.0 None
|
||||||
|
'''
|
||||||
|
|
||||||
|
|
||||||
|
from flask import Flask,render_template,request,redirect
|
||||||
|
from flask_sqlalchemy import SQLAlchemy
|
||||||
|
|
||||||
|
app = Flask(__name__)
|
||||||
|
|
||||||
|
|
||||||
|
#设置数据库连接
|
||||||
|
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://root:123123@127.0.0.1:3306/example'
|
||||||
|
|
||||||
|
with app.app_context():
|
||||||
|
db = SQLAlchemy(app)
|
||||||
|
|
||||||
|
# 定义城市模型
|
||||||
|
class City(db.Model):
|
||||||
|
id = db.Column(db.Integer,primary_key=True,autoincrement=True)
|
||||||
|
provincename = db.Column(db.String(255))
|
||||||
|
cityname = db.Column(db.String(255))
|
||||||
|
usernumber = db.Column(db.Integer)
|
||||||
|
|
||||||
|
def __repr__(self):
|
||||||
|
return f"<{self.cityname!r}>"
|
||||||
|
|
||||||
|
class User(db.Model):
|
||||||
|
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
|
||||||
|
name = db.Column(db.String(120))
|
||||||
|
|
||||||
|
# 查询所有数据
|
||||||
|
@app.route("/select")
|
||||||
|
def select_all():
|
||||||
|
city_list = City.query.order_by(City.id.desc()).all()
|
||||||
|
#将数据给到前端页面
|
||||||
|
return render_template("index.html",city_list = city_list)
|
||||||
|
|
||||||
|
|
||||||
|
# 首页
|
||||||
|
@app.route("/")
|
||||||
|
def index():
|
||||||
|
return select_all()
|
||||||
|
|
||||||
|
|
||||||
|
@app.route("/insert_page")
|
||||||
|
def insert_page():
|
||||||
|
#跳转至添加信息页面
|
||||||
|
return render_template("insert.html")
|
||||||
|
|
||||||
|
@app.route("/insert",methods=['GET','POST'])
|
||||||
|
def insert():
|
||||||
|
if request.method == 'POST':
|
||||||
|
provincename = request.form.get('province')
|
||||||
|
cityname = request.form['city']
|
||||||
|
usernumber = request.form['usernumber']
|
||||||
|
city = City(provincename=provincename,cityname=cityname,usernumber=usernumber)
|
||||||
|
print(city)
|
||||||
|
db.session.add(city)
|
||||||
|
db.session.commit()
|
||||||
|
return redirect('/') # 重定向到首页
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
with app.app_context(): # 将db.create_all()添加到app上下文来执行
|
||||||
|
db.create_all()
|
||||||
|
|
||||||
|
|
||||||
|
app.run(host="0.0.0.0", port=8080, debug=True)
|
@ -1,16 +1,32 @@
|
|||||||
|
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<title>Hello from Flask</title>
|
<title>Title</title>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
{% if name %}
|
<center>
|
||||||
<h1>Hello {{ name }}</h1>
|
<h1>城市信息</h1>
|
||||||
{% else %}
|
<a href="/insert_page">添加城市信息</a>
|
||||||
<h1>Hello World!</h1>
|
<table border="1" width="800px" cellpadding="8" cellspacing="0" >
|
||||||
{% endif %}
|
<tr>
|
||||||
|
<td>province</td>
|
||||||
|
<td>cityname</td>
|
||||||
|
<td>usernumber</td>
|
||||||
|
<td>操作</td>
|
||||||
|
</tr>
|
||||||
|
{% for item in city_list %}
|
||||||
|
<tr>
|
||||||
|
<td>{{ item.provincename }}</td>
|
||||||
|
<td>{{ item.cityname }}</td>
|
||||||
|
<td>{{ item.usernumber }}</td>
|
||||||
|
<td>编辑,删除</td>
|
||||||
|
</tr>
|
||||||
|
{% endfor %}
|
||||||
|
|
||||||
|
</table>
|
||||||
|
</center>
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
@ -0,0 +1,16 @@
|
|||||||
|
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Hello from Flask</title>
|
||||||
|
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
{% if name %}
|
||||||
|
<h1>Hello {{ name }}</h1>
|
||||||
|
{% else %}
|
||||||
|
<h1>Hello World!</h1>
|
||||||
|
{% endif %}
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,17 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Title</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<h1>添加信息</h1>
|
||||||
|
<form action="/insert" method="post" >
|
||||||
|
省份: <input type="text" name="province"> <br>
|
||||||
|
城市名称: <input type="text" name="city"> <br>
|
||||||
|
用户数: <input type="number" name="usernumber"> <br>
|
||||||
|
<input type="submit" value="提交">
|
||||||
|
</form>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,58 @@
|
|||||||
|
# -*- encoding: utf-8 -*-
|
||||||
|
'''
|
||||||
|
@File : test_py_orm.py
|
||||||
|
@License : (C)Copyright 2018-2022
|
||||||
|
|
||||||
|
@Modify Time @Author @Version @Desciption
|
||||||
|
------------ ------- -------- -----------
|
||||||
|
2023/4/18 10:14 zart20 1.0 None
|
||||||
|
'''
|
||||||
|
|
||||||
|
from flask import Flask
|
||||||
|
from flask_sqlalchemy import SQLAlchemy
|
||||||
|
|
||||||
|
|
||||||
|
app = Flask(__name__)
|
||||||
|
|
||||||
|
#设置连接数据库的URL
|
||||||
|
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:123123@127.0.0.1:3306/example'
|
||||||
|
|
||||||
|
#设置每次请求结束后会自动提交数据库中的改动
|
||||||
|
app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = True
|
||||||
|
|
||||||
|
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True
|
||||||
|
#查询时会显示原始SQL语句
|
||||||
|
app.config['SQLALCHEMY_ECHO'] = True
|
||||||
|
db = SQLAlchemy(app)
|
||||||
|
|
||||||
|
class Role(db.Model):
|
||||||
|
# 定义表名
|
||||||
|
__tablename__ = 'roles'
|
||||||
|
# 定义列对象
|
||||||
|
id = db.Column(db.Integer, primary_key=True)
|
||||||
|
name = db.Column(db.String(64), unique=True)
|
||||||
|
us = db.relationship('User', backref='role')
|
||||||
|
|
||||||
|
|
||||||
|
class User(db.Model):
|
||||||
|
__tablename__ = 'users'
|
||||||
|
id = db.Column(db.Integer, primary_key=True)
|
||||||
|
name = db.Column(db.String(64), unique=True, index=True)
|
||||||
|
email = db.Column(db.String(64),unique=True)
|
||||||
|
pswd = db.Column(db.String(64))
|
||||||
|
role_id = db.Column(db.Integer, db.ForeignKey('roles.id'))
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
db.drop_all()
|
||||||
|
db.create_all()
|
||||||
|
ro1 = Role(name='admin')
|
||||||
|
ro2 = Role(name='user')
|
||||||
|
db.session.add_all([ro1,ro2])
|
||||||
|
db.session.commit()
|
||||||
|
us1 = User(name='wang',email='wang@163.com',pswd='123456',role_id=ro1.id)
|
||||||
|
us2 = User(name='zhang',email='zhang@189.com',pswd='201512',role_id=ro2.id)
|
||||||
|
us3 = User(name='chen',email='chen@126.com',pswd='987654',role_id=ro2.id)
|
||||||
|
us4 = User(name='zhou',email='zhou@163.com',pswd='456789',role_id=ro1.id)
|
||||||
|
db.session.add_all([us1,us2,us3,us4])
|
||||||
|
db.session.commit()
|
||||||
|
app.run(debug=True)
|
Loading…
Reference in new issue