flask有个很人性化的处理就是 你的错误的输出是可以通过错误日志来自定义  ,让你输入的错误不再是“大黄页”,

通过 errorhandler()来装饰函数之后你的所有的输入错误的函数你都会进入这个函数中,然后我没可以自定义错误日志的输出

errorhandler("报错响应码")

@app.errorhandler(404)  #当报错是404的时候就走这个函数
def handle_bad_request(e):
# return 'bad request!', 400
return "url错误"

register_error_handler() 管理注册出错

Flask使用SQLAlchemy进行连接

首先安装SQLAlchemy

python3环境下直接安装

pip3 install  mysqlclient 如果下载不成功就要指定版本
eg:
  python3 -m pip install mysqlclient==1.3.12 # 指定下载1.3.12版本 可以先去官网查查版本
  

然后我们进行导入连接

from flask_sqlalchemy import SQLAlchemy  #导入SQLALChemy

app = Flask(__name__)
#配置数据库连接
app.config['SQLALCHEMY_DATABASE_URL'] = "mysql+pymysql:root:123456@127.0.0.1/mysql" #连接你的mysql数据库 我的数据库的名字是root密码是123456
db = SQLAlchemy(app)

你的连接之后要在界面中的使用

app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://root:123456@127.0.0.1:3306/db2'
# app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = True
db = SQLAlchemy(app) #初始你的db变量 app.config.from_object(Settings) #接收你的配置文件
app.config.from_object(UrlManage) @app.route("/api/hello")
def hello():
from sqlalchemy import text #导入text
sql = text("select * from study")#查询study表
result = db.engine.execute(sql)# 执行这个语句
for row in result:
app.logger.error(row)
return "hello world"

flask-sqlacodegen

依赖mysqlclient

这是一个可以生成你的flask和数据库链接的表,当你的数据库中的字段创建完毕之后 然后再通过这个就可以生成类似于django的model表中信息一样

在使用的时候如果是本地的数据库就是127.0.0.1,如果是外部的就要把数据库权限设置允许外部链接,要下载mysqlclient模块才可以使用,并且如果四python3必须要使用pymysql结合才能连接数据库 而python2是需要mysqldb模块并且保存的文件目录也要建立好

flask-sqlacodegen mysql+pymysql://数据库账户:数据库密码@要链接的ip/链接表 --tables user --outfile 存储的目录 --flask


# 从118.25.239.20下的food_db的数据库中把user表的数据生成到项目中的common/model.py文件中
flask-sqlacodegen mysql+pymysql://root:123456@118.25.239.20/food_db --tables user --outfile common/model.py  --flask  

# 
flask-sqlacodegen mysql+pymysql://root:123456@118.25.239.20/food_db --tables member --outfile common/models/member/member.py  --flask

Flask的错误日志处理和|ORM操作的更多相关文章

  1. flask的orm操作

    django是有orm操作的  可想而知 那么flask也是有orm操作的,其实flask的orm操作的使用和djnago的是差不多的 django的orm操作进行条件筛选的时候后面跟着的是objec ...

  2. Django之ORM操作

    Django之ORM操作 前言 Django框架功能齐全自带数据库操作功能,本文主要介绍Django的ORM框架 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计 ...

  3. django -orm操作总结

    前言 Django框架功能齐全自带数据库操作功能,本文主要介绍Django的ORM框架 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MyS ...

  4. 查看MS SQL SERVER 错误日志

    查看目的: 错误日志的查看是确保过程已成功完成(例如,备份和恢复操作,批处理命令,或其他脚本和过程).这可以帮助检测任何当前或潜在的问题,包括自动恢复信息(尤其是如果SQL Server实例已停止并重 ...

  5. SQL Server代理(5/12):理解SQL代理错误日志

    SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. 如我们在这个系列的前几篇文章所见,SQL ...

  6. ASP.NET MVC中错误日志信息记录

    MVC中有一个处理异常的过滤器 HandleErrorAttribute 1.新建一个类继承自 HandleErrorAttribute,然后重写OnException这个方法 public clas ...

  7. centos shell编程6一些工作中实践脚本 nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志 直接送给bc做计算 gzip innobackupex/Xtrabackup 第四十节课

    centos   shell编程6一些工作中实践脚本   nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志  直接送给bc做计算  gzip  innobacku ...

  8. 第五篇 SQL Server代理理解代理错误日志

    本篇文章是SQL Server代理系列的第五篇,详细内容请参考原文. 正如这一系列的前几篇所述,SQL Server代理作业是由一系列的作业步骤组成,每个步骤由一个独立的类型去执行.在第四篇中我们看到 ...

  9. [转]PHP错误日志

    对 于PHP开发者来说,一旦某个产品投入使用,应该立即将display_errors选项关闭,以免因为这些错误所透露的路径.数据库连接.数据表等信息 而遭到黑客攻击.但是,任何一个产品在投入使用后,都 ...

随机推荐

  1. html学习笔记(一)

    认识网页 网页组成 由文字.图片.输入框.视频.音频.超链接等组成. web标准 W3C组织(万维网联盟) Html (结构标准 ),相当人的身体. Css 样式(表现)标准 , 相当与给人化妆 变的 ...

  2. 利用ggplot2画出各种漂亮图片详细教程

    1.Why use ggplot2 ggplot2是我见过最human friendly的画图软件,这得益于Leland Wilkinson在他的著作<The Grammar of Graphi ...

  3. redis-java中的callback回掉机制

    springboot整合redis后, 会提供StringRedisTEmplate和 RedisTemplate 两个模板类供食用, 有时候这并不能满足我们的需求, 需要使用 connect 处理, ...

  4. Pipenv——最好用的python虚拟环境和包管理工具

    pipenv 是Kenneth Reitz大神的作品,能够有效管理Python多个环境,各种包.过去我们一般用virtualenv搭建虚拟环境,管理python版本,但是跨平台的使用不太一致,且有时候 ...

  5. vim---打造Python IDE

    1.文法高亮 为了能在Vim中支持Python文法需要用到插件python.vim,该插件默认位于(/usr/share/vim/vim72/)<Vim安装目录>/<$VIMRUNT ...

  6. activemq的三种通信方式

    一.安装与启动 1.下载安装activemq,下载地址:http://activemq.apache.org/download.html. 2.安装完成后,进入其所在目录的bin目录下面,根据系统位数 ...

  7. [转载]Jquery mobiscroll 移动设备(手机)wap日期时间选择插件以及滑动、滚动插件

    Jquery Mobiscroll是一个用于触摸设备(Android phones, iPhone, iPad, Galaxy Tab)的日期和时间选择器jQuery插件.以及各种滑动插件 可以让用户 ...

  8. Linux skbuff注释笔记

    SKB结构定义   /usr/src/linux/include/linux/skbuff.h sk_buff_head: struct sk_buff_head { //SKB的头结点 /* The ...

  9. WinForm 多语言处理

    多语言处理工具我使用的是  SailingEase .NET Resources Tool ,好处是导出一个Excel,把具体翻译工作交给专业的人来做,翻译ok后再导入,缺点就是后续更改麻烦,添加一个 ...

  10. javascript中字符串常用操作总结

    String对象属性 (1) length属性 length算是字符串中非常常用的一个属性了,它的功能是获取字符串的长度.当然需要注意的是js中的中文每个汉字也只代表一个字符,这里可能跟其他语言有些不 ...