creating-custom-commands-in-flask

在烧瓶中创建自定义命令

原文:https://www . geesforgeks . org/creating-custom-commands-in-flask/

本文围绕如何在 flask 中创建自定义命令展开。每次使用烧瓶运行 运行烧瓶时,运行实际上是一个命令,在烧瓶配置文件中启动一个名为运行的函数。同样,如果您曾经使用过类似 flask migrate 的东西,那么您可能对 flask DB migrate 或升级很熟悉。要创建这样一个在后端执行一些操作的手动命令,我们将遵循一些步骤--

如何在 Flask 中创建自定义命令?

**第 1 步:**使用两个主库创建命令--单击并使用烧瓶的 _appcontext 库。现在让我们创建一个名为"烧瓶创建"的命令,该命令将启动一个数据库,并在该数据库中创建一个简单的表

py 复制代码
import click
from flask.cli import with_appcontext

点击是 flask 用来在命令行创建这些命令的库。

步骤 2: 添加数据库配置--

py 复制代码
from flask_sqlalchemy import SQLAlchemy
app.config['SQLALCHEMY_DATABASE_URI']="sqlite://db.sqlite3"

**第三步:**然后我们创建一个简单的表格,如图所示:

py 复制代码
class MyTable(db.Model):
    id = db.Column(db.Integer, primary_key=True)

所以这个表显然不会做任何事情,它只有一列,因为本文的目的是演示如何创建一个命令,所以无论何时您想首先创建一个命令,您都可以使用装饰器**@ click . command(name = ' create ')**(这里参数的值告诉您想要创建的自定义命令的名称)。

**@ with _ app context()--**with _ app context 将所有的 app 信息都放在这个函数中,所以这个函数被称为包含在 app 中。

**步骤 4--**让我们创建所需的文件

蟒蛇 3

py 复制代码
# import required libraries
from flask import Flask
import click
from flask.cli import with_appcontext
from flask_sqlalchemy import SQLAlchemy

# initialize flask app
app = Flask(__name__)

# initialize Database configuration
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite://db.sqlite3'

# create Database
db = SQLAlchemy(app)

# add table to Database
class MyTable(db.Model):
    id = db.Column(db.Integer, primary_key=True)

# create command function
@click.command(name='create')
@with_appcontext
def create():
    db.create_all()

# add command function to cli commands
app.cli.add_command(create)

运行烧瓶前创建--

运行烧瓶创建后--

数据库中的表格--

相关推荐
小江的记录本5 分钟前
【MySQL】《MySQL日志面试背诵版+思维导图》(核心考点 + MySQL 8.0最新优化)
java·数据库·后端·python·sql·mysql·面试
西洼工作室6 分钟前
Python邮箱工具类封装:高效邮件发送与管理
python·全栈
子午11 分钟前
基于YOLO的水稻害虫检测系统~Python+yolov8算法+深度学习+人工智能+模型训练
人工智能·python·yolo
我命由我1234513 分钟前
Android Framework P2 - 开机启动 Zygote 进程、Zygote 的预加载机制
android·java·开发语言·python·java-ee·intellij-idea·zygote
yoyo_zzm22 分钟前
PHP vs Java:后端语言终极选择指南
java·spring boot·后端·架构·php
2401_8504916529 分钟前
PHP 中处理会话数组时的类型错误解析与修复指南
jvm·数据库·python
ㄟ留恋さ寂寞32 分钟前
如何修改数据库实例名_ORACLE_SID环境变量重命名实战
jvm·数据库·python
苏三说技术35 分钟前
从索引失效到性能翻倍,DBA不愿透露的10个优化技巧
后端
2401_8504916541 分钟前
使用 curl 调用 Go 标准库 RPC 服务(JSON-RPC 协议详解)
jvm·数据库·python
平常心cyk44 分钟前
OpenAI库的基本使用
python