#mysql数据库
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
class Config:
"""配置信息"""
# 基本配置
DEBUG = True
SECRET_KEY = "1"
# 数据库
SQLALCHEMY_DATABASE_URI = "mysql://root:root@127.0.0.1:3306/ihome"
SQLALCHEMY_TRACK_MODIFICATIONS = True
或者使用import mysql.connector
然后app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+mysqlconnector://root:root@localhost/ihome'
redis数据库
import redis
class Config:
"""配置信息"""
...
#redis数据库
REDIS_HOST = "127.0.0.1"
REDIS_PORT = 6379
# 创建redis连接对象
redis_store = redis.StrictRedis(host=Config.REDIS_HOST, port=Config.REDIS_PORT)
配置session
from flask_session import Session
class Config:
"""配置信息"""
...
# session配置
SESSION_TYPE = "redis"
SESSION_REDIS = redis.StrictRedis(host=REDIS_HOST, port=REDIS_PORT)
SESSION_USE_SIGNER = True #对cookie中的sessionid进行隐藏处理
PERMANENT_SESSION_LIFETIME = 86400 # session数据的有效期,单位秒
# 利用flask_session将session数据保存到redis中
Session(app)
csrf
from flask_wtf import CSRFProtect
# 为flask补充csrf防护
CSRFProtect(app)
添加日志功能
import logging
# 设置日志的记录等级
logging.basicConfig(level=logging.DEBUG) # 调试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)