python中SQLAlchemy使用前端页面实现插入数据
短信预约 -IT技能 免费直播动态提醒
1.实验效果
如果插入的数据已经存在于数据库中,则出现以下提示:
查看数据库表中的数据,发现已经将数据存入了数据库表中:
2.主main.py文件
import os
from flask_sqlalchemy import SQLAlchemy
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import String,Integer,create_engine,Column
from flask import Flask,render_template,redirect,request,url_for,abort,jsonify
app=Flask(__name__)
class Config:
"""相关配置"""
# cmd:
# 创建数据库:create database flaskdb(数据库名) default charset(类型) utf8;
# 使用数据:use flaskdb
# 查看数据库表:show tables;
SQLALCHEMY_DATABASE_URI='mysql+pymysql://root:root@127.0.0.1:3306/flaskdb'
SQLALCHEMY_TRACK_MODIFICATIONS=True
app.config.from_object(Config)
#创建数据库
mysql=SQLAlchemy(app)
#创建表
class Moster(mysql.Model):
"""管理员表名"""
__tablename__='moster'
username=Column(String(128),primary_key=True)
password=Column(String(128),unique=True)
@app.route('/<string:username>/<string:password>',methods=['POST','GET'])
def Insert_User(username,password):
#判断数据库表中是否已经存在了此用户,如果存在,则不进行插入数据
data=Moster.query.filter(Moster.username==username).all()
if data==[]:
# 创建对象,进行数据的插入
mos = Moster(username=username, password=password)
# 创建session
mysql.session.add(mos)
mysql.session.commit()
# 关闭数据库
mysql.session.close()
return jsonify('Add the data Successed!')
else:
return jsonify('The data have been existed!')
@app.route('/index',methods=['POST','GET'])
def index():
if request.method=='POST':
username=request.form.get('username')
password=request.form.get('password')
return redirect(url_for('Insert_User',username=username,password=password))
return render_template('mysql.html')
if __name__ == '__main__':
print('Pycharm')
# 对数据库进行清除,让数据库是“干净的”
# mysql.drop_all()
# 创建表
mysql.create_all()
app.run(debug=True)
3.前端mysql.html文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>MySQL</title>
<style>
div {
width:250px;
height:100px;
margin:auto;
margin-top:200px;
font-size:15px;
font-weight:700;
border:2px solid #000000;
background:#FFFFFF;
}
div form input {
margin-top:10px;
}
.btn{
margin-left:100px;
cursor:pointer;
}
</style>
</head>
<body>
<div>
<form action="http://127.0.0.1:5000/index" method="POST">
<label>账号: </label>
<input type="text" name="username"><br>
<label>密码: </label>
<input type="password" name="password"><br>
<input class="btn" type="submit" name="submit" value="提交"><br>
</form>
</div>
</body>
</html>
到此这篇关于SQLAlchemy使用前端页面实现插入数据的文章就介绍到这了,更多相关SQLAlchemy插入数据内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341