当前位置: 首页 > article >正文

PyCharm 中使用 Flask 框架和数据库

要在 PyCharm 中使用 Flask 框架和数据库,你需要进行几个步骤,包括安装 Flask-SQLAlchemy、配置数据库以及创建数据库。以下是详细步骤:

1. 安装 Flask-SQLAlchemy

在 PyCharm 的终端中,运行以下命令来安装 Flask-SQLAlchemy:

pip install flask-sqlalchemy

2. 配置数据库

在你的 Flask 应用中,你需要配置数据库连接。这通常在 Flask 应用的配置文件或主应用文件中完成。以下是配置 MySQL 数据库的示例:

from flask import Flask
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)

# 配置数据库连接字符串
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://username:password@localhost/flaskdb'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False

# 初始化数据库对象
db = SQLAlchemy(app)

在这个例子中,你需要替换 usernamepassword 为你的 MySQL 用户名和密码,flaskdb 是数据库名称。

3. 创建数据库

在 MySQL 命令行中,使用以下命令创建数据库:

mysql -u root -p

然后,输入 MySQL 密码(如果设置了的话)。

创建数据库:

CREATE DATABASE flaskdb DEFAULT CHARACTER SET utf8;

4. 定义模型

在 Flask 应用中定义模型。模型是数据库表的 Python 表示:

class User(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(80), unique=True, nullable=False)
    email = db.Column(db.String(120), unique=True, nullable=False)

    def __repr__(self):
        return '<User %r>' % self.username

5. 初始化数据库

在你的 Flask 应用中,你需要创建数据库表:

with app.app_context():
    db.create_all()

6. 运行 Flask 应用

确保你的 Flask 应用正确配置并运行:

if __name__ == '__main__':
    app.run(debug=True)

7. 使用数据库

在你的 Flask 视图或其他部分中,你可以使用 db 对象来操作数据库:

@app.route('/add_user', methods=['POST'])
def add_user():
    username = request.form['username']
    email = request.form['email']
    new_user = User(username=username, email=email)
    db.session.add(new_user)
    db.session.commit()
    return 'User added.'

确保你的数据库服务器运行正常,并且 Flask 应用的配置正确无误。这样,你就可以在 PyCharm 中使用 Flask 框架和数据库了。


http://www.kler.cn/a/428160.html

相关文章:

  • Java基础知识总结(三十二)--API--- java.lang.Runtime
  • python3+TensorFlow 2.x(三)手写数字识别
  • 冲刺蓝桥杯之速通vector!!!!!
  • Ubuntu20.04 磁盘空间扩展教程
  • 【后端】Flask
  • 实验七 带函数查询和综合查询(2)
  • uniapp实现轮播图效果
  • 添加TCP SYN扫描的Qt程序
  • 在python中使用布尔逻辑
  • 成像报告撰写格式
  • c++的类和对象(3)
  • 统计二叉树叶子结点个数
  • Unity3D运行设置物体为预制体
  • 福昕PDF低代码平台
  • Oracle EBS FA 如何打开关闭的资产会计期间?
  • CTF-WEB: 目录穿越与伪协议 [第一届国城杯 signal] 赛后学习笔记
  • 现代C++ 7 初始化
  • 高效开发 Python Web 应用:FastAPI 数据验证与响应体设计
  • 在vue3里使用scss实现简单的换肤功能
  • 3D 生成重建018-LangSplat用文本在3DGS内搜寻你的真爱
  • CCF-GESP 等级考试 2024年12月认证C++三级真题解析
  • MATLAB 直线插点重采样(98)
  • C 语言进阶:突破基础,探索更强大的编程世界
  • 常见面试题之JAVA集合
  • 光伏组件的度电成本如何降低?
  • 解决 Maven 部署中的 Artifact 覆盖问题:实战经验分享20241204