1、秘钥设置:
app.secret_key = '随意设置'

2、SQLALCHEMY配置:
# 连接数据库
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://root:@127.0.0.1:3306/数据库名'
# 动态追踪修改设置,如未设置只会提示警告
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True
# 查询时会显示原始SQL语句
app.config['SQLALCHEMY_ECHO'] = True
db = SQLAlchemy(app)

2、数据库迁移:
导包:
from flask_migrate import Migrate, MigrateCommand
from flask_script import Manager
配置:
# 支持黑窗口 输入命令
manager = Manager(app)

# 将数据库迁移的命令加入到黑窗口中 作用是用于更新数据库的结构
migrate = Migrate(app, db)
manager.add_command('db', MigrateCommand)

执行迁移命令

1.python 文件 db init

2.python 文件 db migrate -m"版本名(注释)"

3.python 文件 db upgrade 然后观察表结构

注意: 只有第一次生成迁移文件夹时候,才需要执行第一条命令。

修改程序入口

if __name__ == '__main__':

# app.run(debug=True)

manager.run()

4、闪现消息:
from flask import Flask, flash

页面弹窗:
{% for mes in get_flashed_messages() %}
<script>alert('{{ mes }}')</script>
{% endfor %}

4、菜单栏:

(1)、 header内容

<style>

ul{

list-style: none;

}

ul li{

display: block;

margin-right: 20px;

float: left;

}

</style>

(2)、body内容

<body>

<div style="float: left; width: 100%">

<ul>

<li><a href="路由接口">分类1</a></li>

<li><a href="路由接口">分类2</a></li>

<li><a href="路由接口">分类3</a></li>

<li><a href="路由接口">分类4</a></li>

<li><a href="路由接口">分类5</a></li>

</ul>

</div>

<hr >

<table style="float: left;" border="1">

<tr>

<td>序号</td>

<td>商品名称</td>

<td>价格</td>

</tr>

<tr>

<td>1</td>

<td>牛角面包</td>

<td>200.00</td>

</tr>

<tr>

<td>2</td>

<td>法式面包</td>

<td>100.00</td>

</tr>

</table>

</body>

6、日志配置
(1) 导包:
import logging
from logging.handlers import RotatingFileHandler

2)配置:
#日志文件,作用:用来记录程序的运行过程,比如:调试信息,接口访问信息,异常信息

def log_file(level):

# 设置日志的记录等级,设置日志等级: 常见等级有:DEBUG < INFO < WARING < ERROR < FATAL(CRITICAL)

logging.basicConfig(level=level) # 调试debug级

# 创建日志记录器,指明日志保存的路径、每个日志文件的最大大小、保存的日志文件编号

file_log_handler = RotatingFileHandler("logs/log", maxBytes=1024*1024*100, backupCount=10)

# 创建日志记录的格式 日志等级 输入日志信息的文件名 行数 日志信息

formatter = logging.Formatter('%(levelname)s %(filename)s:%(lineno)d %(message)s')

# 为刚创建的日志记录器设置日志记录格式

file_log_handler.setFormatter(formatter)

# 为全局的日志工具对象(flask app使用的)添加日志记录器

logging.getLogger().addHandler(file_log_handler)

7、CSRF配置
(1)导包:
from flask_wtf import CSRFProtect

(2)配置:
CSRFProtect(app)

(3)表单配置:
<form method="post" action="/">
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}" />
</form>

8、项目配置文件
class Config(object):
"""工程配置信息"""
DEBUG = True
"""SQLAlchemy 配置"""

SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://root:12345678@127.0.0.1:3306/imformation'

SQLALCHEMY_TRACK_MODIFICATIONS = False
SQLALCHEMY_COMMIT_ON_TEARDOWN = True
# 数据库内容发送改变之后,自动提交
# 查询时会显示原始SQL语句
# SQLALCHEMY_ECHO = True
SECRET_KEY = '1811'
LEVEL = 'DEBUG'

flask中需要的基本配置信息的更多相关文章

  1. JSP/JSF从web.xml中取出context-param的配置信息

    JSP/JSF从web.xml中取出context-param的配置信息. 应用场景:我们配置了项目的版本信息,想让他显示在页面上,如: <context-param><!-- ## ...

  2. Flask(2)- 装饰器的坑及解决办法、flask中的路由/实例化配置/对象配置/蓝图/特殊装饰器(中间件、重定义错误页面)

    一.装饰器的坑以及解决方法 1.使用装饰器装饰两个视图函数,代码如下 from flask import Flask, redirect, render_template, request, sess ...

  3. C#程序中获取电脑硬件配置信息的一种方法

    本文介绍获取cpu信息和内存信息的方法,根据本文所举例的代码可以举一反三获取更多信息. 获取cpu名称的方法: public string GetCpuInfo() { ManagementObjec ...

  4. Asp.net Core Startup Class中是如何获取配置信息的

    默认的网站构建方式 VS2015新建asp.net core项目,项目建立完成后,有两个文件,Program.cs和Startup.cs. public class Program { public ...

  5. cisco和h3c网络设备中一次性打印全部配置信息

    cisco的是全页打印配置信息的命令: #terminal length 0 #show run 华为和h3c的是: >screen-length 0 temporary >display ...

  6. Flask中的对象的配置

    常用的有 1.'DEBUG': False, # 是否开启Debug模式 2.'TESTING': False, # 是否开启测试模式 3.'SECRET_KEY': None # 在启用Flask内 ...

  7. 从Config文件中读取节点的配置信息

    下面是web.config中与本内容有关的细节 <appSettings> <add key="servername" value="www" ...

  8. flask 中的ORM ( 二 )

    1 关系映射 1 多对多 1 什么是多对多 A表中的一条数据可以与B表中任意多条数据相关联 B表中的一条数据可以与A表中任意多条数据相关联 2 实现 在数据库中使用第三张表(关联表) 在编程语言中,可 ...

  9. 【flask】使用类组织配置-使用工厂函数创建程序实例

    [需求] 使用配置类管理flask管理测试环境, 通过1个参数即可控制Flask是运行develpment环境还是production环境(数据库配置,邮件配置也要根据环境的变化而变化) [思路] 1 ...

随机推荐

  1. VS2013中调驱动

    https://msdn.microsoft.com/en-us/library/windows/hardware/jj200334(v=vs.85).aspx 需要注意的就是 debugport:n ...

  2. JavaScript js 引入CDN 不生效 注意事项

    [博客园cnblogs笔者m-yb原创,转载请加本文博客链接,笔者github: https://github.com/mayangbo666,公众号aandb7,QQ群927113708]https ...

  3. Windows下PyMC安装

    先安装Anaconda2 然后conda install -c https://conda.binstar.org/pymc pymc

  4. runtime统计页面数据或者统计按钮的点击次数

    一.按钮的点击统计 有的时候我们遇见这样的需求,让我们统计用户点击我们页面的动作的次数给与用户以统计,供以后给客户端推送不同的页面数据,这时候我们就会用到iOS的黑魔法(runtime). 首先我们不 ...

  5. 团队项目需求心得——慢阻肺疾病管理APP

    一.项目介绍: 先上图: 这是我们小组开发项目的系统构成图. 本项目研发面向家庭/社区,对稳定期中慢阻肺患者病情和环境全方位监测.简单病情趋势分析和患者行为干预,并且提供患者与家庭医生和专家沟通渠道的 ...

  6. Java——重写

    重写面向对象编程的三大特征之一 1.子类重写了父类的方法,则使用子类创建的对象调用该方法时,调用的是重写后的方法,即子类中的方法 2.子类重写父类方法需满足以下条件: (1)方法名和参数列表: 子类重 ...

  7. Ganlia采样、统计及RRD记录周期(频次、间隔)的配置和更改

    Ganglia & RRD Ganglia是伯克利开发的一个集群监控软件.可以监视和显示集群中的节点的各种状态信息,比如如:cpu .mem.硬盘利用率, I/O负载.网络流量情况等,同时可以 ...

  8. CPU-bound(计算密集型) 和I/O bound(I/O密集型) 区别 与应用

    I/O密集型 (CPU-bound) I/O bound 指的是系统的CPU效能相对硬盘/内存的效能要好很多,此时,系统运作,大部分的状况是 CPU 在等 I/O (硬盘/内存) 的读/写,此时 CP ...

  9. Mantis:Mantis rest api url 404 Not Found.解决过程纪录

    测试Mantis rest api时碰到的问题:404 Not Found. 根据文件,Mantis rest api的预设url是{{url}}/api/rest/{{controller}}. 其 ...

  10. .NetCore多文件上传进度的示例

    主要讲的内容有: 1-----form方式上传一组图片 2-----ajax上传一组图片 3-----ajax提交+上传进度+一组图片上传 4-----Task并行处理+ajax提交+上传进度+一组图 ...