【Flask&MySQL】ORM模型的CRUD操作(十二)

2023-11-11

CRUD是?

crud是指在做计算处理时的增查改删

  • 增加(Create)
  • 读取(Read)
  • 更新(Update)
  • 删除(Delete)

几个单词的首字母简写。crud主要被用在描述软件系统中数据库或者持久层的基本操作功能。

一、添加操作

1.创建视图函数

@app.route("/user/add")
def add_user():
    # 1.创建ORM对象
    user = User(username="张三",password="123456")
    # 2.将ORM对象添加到db.session中
    db.session.add(user)
    # 3.将db.session中的改变同步到数据库中
    db.session.commit()
    return "用户创建成功!"

2.地址栏访问url

3.查看数据

​ 

 

二、查询操作

1.编写视图函数

@app.route("/user/query")
def query_user():
    # 1.get查找:根据主键查找
    # db.Moudle类有query对象,子类User可以直接调用
    user = User.query.get(1)
    print(f"您查找的用户id是:{user.id},{user.username},{user.password}")
    # 2.filter_by查找
    # 先创建一个数组,数据类型为<class 'flask_sqlalchemy.query.Query'>(是一个类数组类型,可遍历)
    users = User.query.filter_by(username="张三")
    for user in users:
        print(user.username)
    return "数据查找成功!"

2.地址栏输入url

3.返回控制台查看返回数据

 

 

三、修改操作

@app.route("/user/update")
def update_user():
    user = User.query.filter_by(username="张三").first()
    # 修改密码
    user.password = "654321"
    # 将数据同步到数据库中
    db.session.commit()
    return "数据修改成功!"
  •  first()方法表示查找第一个数据,与索引[0]效果一致,但是查询对象为空时,first()不会抛异常

​ 

 

 四、删除操作

@app.route('/user/delete')
def delete_user():
    # 1.查找
    user = User.query.get(1)
    # 2.从db.session中删除
    db.session.delete(user)
    # 3.将db.session中的修改,同步到数据库中
    db.session.commit()
    return "数据删除成功!"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Flask&MySQL】ORM模型的CRUD操作(十二) 的相关文章

  • Dask DataFrame 的逐行处理

    我需要处理一个大文件并更改一些值 我想做这样的事情 for index row in dataFrame iterrows foo doSomeStuffWith row lol doOtherStuffWith row dataFrame
  • Python 中 genfromtxt() 的可变列数?

    我有一个 txt具有不同长度的行的文件 每一行都是代表一条轨迹的一系列点 由于每条轨迹都有自己的长度 因此各行的长度都不同 也就是说 列数从一行到另一行不同 据我所知 genfromtxt Python 中的模块要求列数相同 gt gt g
  • 无法包含外部 pandas 文档 Pycharm v--2018.1.2

    我无法包含外部 pandas 文档Pycharm v 2018 1 2 例如 numpy gt http docs scipy org doc numpy reference generated module name element na
  • 如何在 Windows 上使用 Python 3.6 来安装 Python 2.7

    我想问一下如何使用pip install对于 Python 2 7 当我之前安装并使用 Python 3 6 时 我现在必须使用 Windows 上的 Python 版本 pip install 继续安装 Python 3 6 我需要使用以
  • 反加入熊猫

    我有两个表 我想附加它们 以便仅保留表 A 中的所有数据 并且仅在其键唯一时添加表 B 中的数据 键值在表 A 和 B 中是唯一的 但在某些情况下键将出现在表 A 和 B 中 我认为执行此操作的方法将涉及某种过滤联接 反联接 以获取表 B
  • 使用 genfromtxt 导入 numpy 中缺失值的 csv 数据

    我有一个 csv 文件 看起来像这样 实际文件有更多的列和行 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 假设文件的名称是info csv如果我尝试使用导入它 data numpy genfromtxt i
  • MySQL 中非空值的计数和分组

    我需要计算按特定 ID 分组的非空 我的意思是至少包含 1 个字符的字符串 行 例如 我的数据可能如下所示 form id mapping 1 value 1 1 1 value 2 2 2 NULL 3 value 3 我想计算每个表单的
  • Python While 循环,and (&) 运算符不起作用

    我正在努力寻找最大公因数 我写了一个糟糕的 运算密集型 算法 它将较低的值减一 使用 检查它是否均匀地划分了分子和分母 如果是 则退出程序 但是 我的 while 循环没有使用 and 运算符 因此一旦分子可整除 它就会停止 即使它不是正确
  • 字典的嵌套列表

    我正在尝试创建dict通过嵌套list groups Group1 A B Group2 C D L y x 0 for y in x if y x 0 for x in groups d k v for d in L for k v in
  • 使用循环将对象添加到列表(python)

    我正在尝试使用 while 循环将对象添加到列表中 基本上这就是我想做的 class x pass choice raw input pick what you want to do while choice 0 if choice 1 E
  • 如何逐像素绘制正方形(Python,PIL)

    在空白画布上 我想使用 Pillow 逐像素绘制一个正方形 我尝试使用 img putpixel 30 60 155 155 55 绘制一个像素 但它没有执行任何操作 from PIL import Image def newImg img
  • 未知的表引擎“InnoDB”

    最近 我发现如果我有好的硬件 我可以最大限度地提高 mysql 的性能 由于我一直在使用 InnoDB 所以我在 my ini 中添加了额外的配置 以下是新添加的配置 innodb data file path ibdata1 10M au
  • ValueError:无法插入 ID,已存在

    我有这个数据 ID TIME 1 2 1 4 1 2 2 3 我想按以下方式对数据进行分组ID并计算每组的平均时间和规模 ID MEAN TIME COUNT 1 2 67 3 2 3 00 1 如果我运行此代码 则会收到错误 ValueE
  • WindowsError:[错误 5] 访问被拒绝

    我一直在尝试终止一个进程 但我的所有选项都给出了 Windows 访问被拒绝错误 我通过以下方式打开进程 一个python脚本 test subprocess Popen sys executable testsc py 我想杀死那个进程
  • Scrapy 蜘蛛无法工作

    由于到目前为止没有任何效果 我开始了一个新项目 python scrapy ctl py startproject Nu 我完全按照教程操作 创建了文件夹和一个新的蜘蛛 from scrapy contrib spiders import
  • CSV 在列中查找最大值并附加新数据

    大约两个小时前 我问了一个关于从网站读取和写入数据的问题 从那时起 我花了最后两个小时试图找到一种方法来从输出的 A 列读取最大日期值 将该值与刷新的网站数据进行比较 并将任何新数据附加到 csv 文件而不覆盖旧的或创建重复项 目前 100
  • MySQL 中的 group_concat 性能问题

    我添加了一个group concat到一个查询并杀死了性能 添加之前和之后的解释计划是相同的 所以我对如何优化它感到困惑 这是查询的简化版本 SELECT curRow curRow 1 AS row number docID docTyp
  • 具有指定置信区间的 Seaborn 条形图

    我想在 Seaborn 条形图上绘制置信区间 但我已经计算出置信区间 如何让 Seaborn 绘制我的置信区间而不是尝试自行计算它们 例如 假设我有以下 pandas DataFrame x pd DataFrame Group 1 0 5
  • 如何使用 Django (Python) 登录表单?

    我在 Django 中构建了一个登录表单 现在我遇到了路由问题 当我选择登录按钮时 表单不会发送正确的遮阳篷 我认为前端的表单无法从 查看 py 文件 所以它不会发送任何 awnser 并且登录过程无法工作 该表单是一个简单的静态 html
  • 安装后步骤未成功完成 MySQL Mac OS Sierra

    pyEnv Anants MacBook Pro litibackend anantchandra brew postinstall mysql gt Postinstalling mysql gt usr local Cellar mys

随机推荐

  • Mac 10.15下安装brew

    在Mac下初次使用brew命令会出现 bash brew command not found 随后找了各大博客 要在命令行输入如下命令 bin zsh c curl fsSL https gitee com cunkai HomebrewC
  • 历年研究生数学建模优秀论文汇总

    全国研究生数学建模竞赛 National Post Graduate Mathematical Contest in Modeling 是 全国研究生创新实践系列活动 的主题赛事之一 一般位于九月中旬 历时四天 竞赛题目一般来源于工程与管理
  • 卷积神经网络实现人脸表情识别

    文章目录 一 实现过程 二 运用训练的模型实现表情识别 一 实现过程 1 1 下载数据集 https github com truongnmt smile detection 1 2 根据猫狗数据集训练的方法来训练笑脸数据集 coding
  • HBase介绍(列存储)

    HBase介绍 列存储 2013 11 26 23 25 5871人阅读 评论 2 收藏 举报 分类 云存储 2 Hbase简介 started by chad walters and jim 2006 11 G release paper
  • FPGA-UART串口通信

    目录 前言 1 UART串口的介绍 2 实验开始前一些参数的计算 3 UART通信的时序 4 代码部分 1 接收部分代码 2 发送部分的代码 前言 本篇文章是为了记录自己FPGA的学习过程 不完全正确 仅供参考 1 UART串口的介绍 ua
  • 02守护进程学习之创建守护进程的七步骤及其分析

    02守护进程学习之创建守护进程的七步骤及其分析 与守护进程相关的文章 01守护进程学习之会话的概念和创建会话 包含Linux下相应id的总结一览 02守护进程学习之创建守护进程的七步骤及其分析 03守护进程学习之创建守护进程的代码例子 1
  • unicode,decode,encode在python的作用

    字符串在Python内部的表示是unicode编码 因此 在做编码转换时 通常需要以unicode作为中间编码 即先将其他编码的字符串解码 decode 成unicode 再从unicode编码 encode 成另一种编码 即 其他编码 g
  • 爬取起点网站图书信息(书名、作者、简介、图片url)

    爬取qidian网站图书信息 书名 作者 简介 图片url import requests from lxml import etree import json class BookSpider object def init self s
  • 华为s5720s-28p-si-ac加睿易路由器VLAN路由设置

    华为s5720s 28p si ac加睿易路由器VLAN路由设置 1 华为交换机初始化设置好WEB接口 2 自带易维WEB版划分VLAN 3 制作好VLAN网关 4 设置好相关接口 5 设置好DHCP以便分VLAN能自动获取到地址 6 进入
  • JS控制台报错Uncaught TypeError Cannot read properties of null (reading ‘appendChild‘);的解决方法

    当控制台出现Uncaught TypeError Cannot read properties of null reading appendChild 解决方法 将html文件中的script标签放在最下面或者中间
  • gethostbyname ()函数的使用

    gethostbyname 函数 根据主机名获取主机信息 用域名或者主机名获取地址 操作系统提供的库函数 函数原型 struct hostent gethostbyname const char hostname hostent结构体 st
  • Chrome下载文件错误:收到了来自服务器的重复标头

    在Chrome浏览器中下载文件时出现错误 收到了来自服务器的重复标头 然而在IE和Firefox浏览器中则不会出现此错误 经上网查看各位前辈的记录后 找到了自己项目的原因 response setHeader Content disposi
  • 使用Express快速搭建静态资源服务器

    有时候 客户端程序实现了某些功能需要与服务端联调 比如从服务器下载一些静态资源文件 XML JSON EXE HTML JS CSS等 像前文提到的场景 测试Electron程序的自动升级功能 我们介绍了如何使用Minio 不用写一行代码就
  • python-数据可视化-使用API

    使用Web应用程序编程接口 API 自动请求网站的特定信息而不是整个网页 再对这些信息进行可视化 一 使用Web API Web API是网站的一部分 用于与使用具体URL请求特定信息的程序交互 这种请求称为API调用 请求的数据将以易于处
  • 【知识分享】数据结构的应用——链表

    背景 对于数据结构 其实学过C语言的都不陌生 无外乎就队列 栈 二叉树等等这些 但其实对于初学者最困惑的不是数据结构是怎么样的 而是数据结构有什么用 我自己也是工作好几年后才体验到数据结构的快乐 所以本系列文章重点从应用场景切入 让大家理解
  • android 源码分析

    感谢网友banketree的收集 压缩包的内容如下 1 360新版特性界面源代码 实现了360新版特性界面的效果 主要涉及到Qt的一些事件处理与自定义控件 但源码好像是c 2 aidl跨进程调用 服务端onBind暴露 然后客户端bindS
  • 架构师日记-软件工程里的组织文化

    一 引言 本文是京东到家自动化测试体系建设过程中的一些回顾和总结 删减了部分系统设计与实践的章节 保留了组织与文化相关的内容 整理成文 以飨读者 下面就以QA Quality Assurance 的视角来探讨工作中经常面临的问题与挑战 关于
  • java 代码走查_java代码走查计划书

    java代码走查计划书 由会员分享 可在线阅读 更多相关 java代码走查计划书 8页珍藏版 请在人人文库网上搜索 1 WATER Corporation 代码走查计划书Version 2 0XXX2012 3 20文档修改记录版本号主要作
  • Linux结构,ls命令,cd命令,绝对路径和相对路径,命令类型,环境变量

    Linux结构 软件 IDE shell 软件 库 一个系统调用 可执行程序无法独立执行 library API 内核 通用管理软件 平台 kernel 底层 硬件 在单个CPU上 硬件资源独立 IDE 集成的开发环境 可以让程序员开发程序
  • 【Flask&MySQL】ORM模型的CRUD操作(十二)

    CRUD是 crud是指在做计算处理时的增查改删 增加 Create 读取 Read 更新 Update 删除 Delete 几个单词的首字母简写 crud主要被用在描述软件系统中数据库或者持久层的基本操作功能 一 添加操作 1 创建视图函