|
|

楼主 |
发表于 2024-7-25 18:44:28
|
显示全部楼层
725最新
- from flask import Flask #网站框架
- from flask import render_template, request, flash, redirect, url_for, jsonify,render_template_string
- from flask_bootstrap import Bootstrap5
- from flask_login import UserMixin
- from flask_sqlalchemy import SQLAlchemy
- from flask_wtf import CSRFProtect, FlaskForm
- from wtforms.fields.simple import StringField, PasswordField, SubmitField
- # D:\37ck\wx\app0512\app240512\v311\Scripts\python.exe D:\37ck\wx\app0512\app240512\app.py
- # app = Flask(__name__) #实例化一个应用
- # 实例化Flask
- app = Flask(__name__, template_folder='templates', static_folder='static')
- # 设置数据库配置参数
- app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
- # 设置为sqlite数据库 sqlite:///bootstrap-flask.db
- app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///7252.db'
- # memory为内存数据库
- # app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///:memory:'
- # 数据库对象应用实例化
- db = SQLAlchemy(app)
- # json中文乱码
- app.config["JSON_AS_ASCII"] = False
- # 设置安全访问密钥
- app.secret_key = '37ck2023dev'
- # 设置按钮默认样式和尺寸参数
- app.config['BOOTSTRAP_BTN_STYLE'] = 'primary'
- app.config['BOOTSTRAP_BTN_SIZE'] = 'sm'
- # 设置表格操作按钮
- app.config['BOOTSTRAP_TABLE_VIEW_TITLE'] = 'Read读取'
- app.config['BOOTSTRAP_TABLE_EDIT_TITLE'] = 'Update修改'
- app.config['BOOTSTRAP_TABLE_DELETE_TITLE'] = 'Remove删除'
- app.config['BOOTSTRAP_TABLE_NEW_TITLE'] = 'Create新建'
- # 实例化UI bootstrap5
- bootstrap = Bootstrap5(app)
- # 跨域访问实例化
- csrf = CSRFProtect(app)
- ### 创建 User 模型
- class User(UserMixin, db.Model):
- id = db.Column(db.Integer, primary_key=True)
- username = db.Column(db.String(80), unique=True, nullable=False)
- password = db.Column(db.String(120), nullable=False)
- asname = db.Column(db.String(80))
- class ELoginForm(FlaskForm):
- username = StringField('用户')
- password = PasswordField('密码')
- submit = SubmitField('登入')
- Logout = SubmitField('退出')
- Cancel = SubmitField('取消')
- class AIRun(db.Model):
- id = db.Column(db.Integer, primary_key=True)
- op = db.Column(db.String(80))
- log = db.Column(db.String(120))
- sates = db.Column(db.Integer)
- # asname = db.Column(db.String(80), unique=True, nullable=False)
- class u725(db.Model):
- id = db.Column(db.Integer, primary_key=True)
- op = db.Column(db.String(80))
- log = db.Column(db.String(120))
- sates = db.Column(db.Integer)
- # # 初始化数据库数据========================================================================
- @app.route('/idb')
- # @login_required #登录授权
- def init():
- db.drop_all()
- db.create_all()
- for i in range(10): #
- u = User(
- username=f'37ck{i + 1}',
- password=f'20200808',
- asname = f'bieming '
- )
- db.session.add(u)
- db.session.commit()
- return "数据库初始化完成"
- # return redirect(url_for("index"))
- @app.route('/') #装饰器:网站主目录访问
- # 函数
- def index():
- return 'Hello 37ck!' #返回数据
- @app.route('/725') #装饰器:网站主目录访问
- def led():
- return 'Hello 开灯控制!' #返回数据
- @app.route('/gjk/<id>/<username>/<email>')
- def gjk(id, username, email):
- # 数据库获取数据
- # 渲染页面:变量(数据数据赋值的对象)+html(网页语言)+css(页面样式)+js(动态效果)
- # 物联网
- return 'Hello 你好我是郭! '+id+'$$$$'+username+'******'+email #返回数据
- # 主程序
- if __name__ == '__main__':
- # app.run()
- app.run(host='0.0.0.0', port=80, debug=True)
复制代码
|
|