pycharm中flask操作数据库

一.新建flask工程

二.新建数据库

三.Terminal中pip install xxx

pip install flask_script
pip install flast_migrate
pip install pymysql

四.添加 config.py, models.py, manage.py

app.py:

from flask import Flask
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config.from_pyfile(‘config.py‘)
db = SQLAlchemy(app)

from models import *

@app.route(‘/‘)
def hello_world():
    return ‘Hello World!‘

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

config.py:

DIALECT = ‘mysql‘
DRIVER = ‘pymysql‘
USERNAME = ‘root‘
PASSWORD = ‘root‘
HOST = ‘127.0.0.1‘
PORT = ‘3306‘
DATABASE = ‘book_store‘

SQLALCHEMY_DATABASE_URI = "{}+{}://{}:{}@{}:{}/{}?charset=utf8".format(DIALECT, DRIVER, USERNAME, PASSWORD, HOST, PORT, DATABASE)
SQLALCHEMY_TRACK_MODIFICATIONS = False

models.py:

from app import db

class Article(db.Model):
    __tablename__ = ‘article‘
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    title = db.Column(db.String(100), nullable=False)
    content = db.Column(db.Text, nullable=False)

manage.py:

from flask_script import Manager
from flask_migrate import Migrate, MigrateCommand
from app import app, db
from models import *

manager = Manager(app)
migrate = Migrate(app, db)
manager.add_command(‘db‘, MigrateCommand)

if __name__ == ‘__main__‘:
    manager.run()

五.迁移数据库

Terminal中输入

1.生成文件夹migrations

python manage.py db init

2.把models模型生成迁移文件

python manage.py db migrate

3.从migrations文件夹迁移到数据库

python manage.py db upgrade

4.将数据库降回到上一个状态

python manage.py db downgrade

六.操作数据库

例:app.py改成

from flask import Flask
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config.from_pyfile(‘config.py‘)
db = SQLAlchemy(app)

from models import *

#  新增数据
@app.route(‘/addData‘)
def addData():
    article = Article(title=‘蒙牛与伊利开箱评测‘, content=‘这篇文章写的很好!‘)
    db.session.add(article)
    db.session.commit()
    return ‘Hello World!‘

@app.route(‘/‘)
def hello_world():
    return ‘Hello World!‘

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

访问http://127.0.0.1:5000/addData后:



参考:

https://www.jianshu.com/p/e4fc86fa21e8

https://blog.csdn.net/milk_and_bread/article/details/89222270

原文地址:https://www.cnblogs.com/holaworld/p/12670509.html

时间: 2024-10-09 04:05:43

pycharm中flask操作数据库的相关文章

python中cursor操作数据库(转)

原文出处:http://doudouclever.blog.163.com/blog/static/175112310201284115340663/ python 操作数据库,要安装一个Python和数据库交互的包MySQL-python-1.2.2.win32-py2.5.exe,然后我们就可以使用MySQLdb这个包进行数据库操作了.     操作步骤如下:    1.建立数据库连接     import MySQLdb     conn=MySQLdb.connect(host="loc

关于Android中内容操作数据库失败的原因及修改方法

最近学习Android开发,在Android Studio编写SQL语句. 很熟悉的一点是,在Android Studio中写SQL语句的增删改查都是写在引号(" ")中的,因此在单词拼写错误的情况下,软件不会提示有错误,最近总结出了几点学习方法. 1.从Android Studio中导出所创建的数据库 在File Explorer下选择data文件夹,单击一下,在点击第二个data,在第二个data中寻找你所创建的文件夹 选择database文件下你所创建的数据库,然后导出到你的桌面

flask操作数据库

原文地址:https://www.cnblogs.com/wapn/p/9651042.html

PyCharm中flask 调试模式Debug的解决方法

原文地址:https://www.cnblogs.com/shenZS/p/11748168.html

adb命令详解(二)——手机缺失sqlite3时操作数据库的多种解决方案

在android应用开发无处不在SQLite数据库的身影.那么在开发中怎么使用adb命令操作数据库的功能呢? 下面我们将完整的介绍与数据库操作相关的命令集及当手机缺少sqlite3的时候的多种解决方案. 1.当手机缺失sqlite3时,如何操作数据库 先来看看手机缺失sqlite3时候的效果图: 这个时候你想操作刚刚编写应用程序中执行的数据库文件内容,显然是执行不了sql语句的.下面我们将介绍三种方法让你可以查看应用程序下的数据库文件: ㈠向手机导入sqlite3文件 ①第一步,下载sqlite

JSP详细篇——JDBC操作数据库(二)

删除数据 范例: 在查询所有图书信息的页面中,添加删除图书信息的超链接,通过Servlet实现对数据的删除操作 (1)在book_list.jsp中,增加删除图书信息的超链接,将连接的地址指向DeleteServlet. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextP

JDBC操作数据库的学习(2)

在上一篇博客<JDBC操作数据库的学习(1)>中通过对例1,我们已经学习了一个Java应用如何在程序中通过JDBC操作数据库的步骤流程,当然我们也说过这样的例子是无法在实际开发中使用的,本篇就在简单开发中如何对上一篇的例子进行“升级”,满足简单开发中对数据库的增删改查(CRUD). 如果按照上一篇中的例子,那么我们在做增删改查的话将会出现每个方法都要获取连接,释放资源,代码会出现很大的重复性,因此我们应该将每个增删改查每个方法中可以复用的代码抽取出来,同时为了能切换数据库方便,也该将一些配置信

JDBC操作数据库之批处理

JDBC开发中,操作数据库需要和数据库建立连接,然后将要执行的SQL语句发送到数据库服务器,最后关闭数据库连接,都是按照这样的操做的,如果按照此流程要执行多条SQL语句,那么就要建立多个数据库连接,将时间浪费在数据库连接上,针对这样的问题,JDBC给出了一个很好的解决方案------JDBC的批处理. 示例代码 (1)index.jsp 1 <%@ page language="java" contentType="text/html; charset=UTF-8&qu

adb命令具体解释(二)——手机缺失sqlite3时操作数据库的多种解决方式

在android应用开发无处不在SQLite数据库的身影.那么在开发中怎么使用adb命令操作数据库的功能呢? 以下我们将完整的介绍与数据库操作相关的命令集及当手机缺少sqlite3的时候的多种解决方式. 1.当手机缺失sqlite3时,怎样操作数据库 先来看看手机缺失sqlite3时候的效果图: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/7