Flask项目架构之代码抽取

# manage.py 文件

from flask_script import Manager
from flask_migrate import Migrate,MigrateCommand
from .info import app,db

manager = Manager(app)

# 用于数据库迁移
Migrate(app, db)
manager.add_command(‘db‘,MigrateCommand)

if __name__ == ‘__main__‘:
# app.run()
manager.run()

#  info包,__init__.py文件

import redis
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_wtf import CSRFProtect
from flask_session import Session

from config import MyConfig

app= Flask(__name__)

db = SQLAlchemy(app)

app.config.from_object(MyConfig)

# 开启csrf保护
CSRFProtect(app)

# 配置redis
redis_store = redis.StrictRedis(host=MyConfig.REDIS_HOST, port=MyConfig.REDIS_PORT)

# 配置Session
Session(app)
#  config.py文件

import redis

class MyConfig(object):
    DEBUG = True

    # 配置SECRET_KEY
    SECRET_KEY = "EjpNVSNQTyGi1VvWECj9TvC/+kq3oujee2kTfQUs8yCM6xX9Yjq52v54g+HVoknA"

    # 数据库的配置信息
    SQLALCHEMY_DATABASE_URI = "mysql://root:[email protected]:3306/flask_job_project"
    SQLALCHEMY_TRACK_MODIFICATIONS = False

    # 配置常量
    REDIS_HOST = ‘127.0.0.1‘
    REDIS_PORT = 6379

    # flask_session的配置信息
    SESSION_TYPE = "redis" # 指定 session 保存到 redis 中
    SESSION_USE_SIGNER = True # 让 cookie 中的 session_id 被加密签名处理
    SESSION_REDIS = redis.StrictRedis(host=REDIS_HOST, port=REDIS_PORT)
        # 使用 redis 的实例
    PERMANENT_SESSION_LIFETIME = 86400 # session 的有效期,单位是秒

原文地址:http://blog.51cto.com/13914991/2171443

时间: 2024-10-17 07:11:27

Flask项目架构之代码抽取的相关文章

Java Web项目中的经典代码抽取

前言: 众所周知的,项目开发中做得最多的无非就是增删查改(CRUD)操作.自从国内Web项目开发渐渐盛行SSH框架之后,其开发开发流程也变得更加灵活:本文就项目开发中的业务层代码作个简单的抽取,供业内朋友参考. 代码抽取原理图如下: 这个图主要展示开发中的2个业务,账号(Account)管理跟类别(Category)管理,具体代码实现比较简单就不附上了.从上面的UML图中我们只需要抽象出BaseService接口并且实现BaseServiceImpl类,其他业务的实现一概继承BaseServic

IOS项目架构分享

1.项目分层:通过过往的一些项目经验,我们在IOS项目架构时候可以对项目进行如下图层: OpenSourceSDK,顾名思义,就是我们引入的一些第三方的开源工具,比如github上开源项目 MySDK 就是我们自己封装的一些SDK.可以在各个项目中能用的 需要重点介绍的就是我们的MVP结构,请接着往下看 -------------------------------------------------------------------------------------------------

项目架构

项目架构 阅读目录 前言 六边形架构 终于开始建项目了 DDD中的3个臭皮匠 CQRS(Command Query Responsibility Segregation) 结语 一.前言 上一篇我们讲了DDD的核心概念(附上链接),并且设计了我们的上下文映射图,那么接下来就准备开始立项了,本篇文章的部分知识点可能对一部分人来说比较基础,可以选择性的阅读. 在这之前我们平常用的最多的应该就是3层架构了,这里也不展开描述了,大家都是在3层的陪伴下一路走来的~ DDD所使用的传统分层架构是松散分层,也

项目架构开发:业务逻辑层之领域驱动失血模型

前边我们构建了个数据访问层,功能虽然简单,但是基本够用了.传送门:项目架构开发:数据访问层 这次我们构建业务逻辑层 业务逻辑是一个项目.产品的核心,也是现实世界某种工作流程在代码层面的体现. 所以,业务逻辑的合理组织构造,或更真实地反映现实业务操作,对项目的成功与否非常重要 现在业界对业务逻辑层的开发,一般会参考Martin Fowler大师提出来的针对业务层开发的四种模式 分别是面向过程的事务脚本.表模块模式,面向对象的活动记录与领域开发模式 我们要做的就是领域驱动开发模式,注意标题中的“失血

项目架构开发:数据访问层之Query

接上文 项目架构开发:数据访问层之Repository 上一章我们讲了IRepository接口,这张我们来讲IQuery 根据字面意思就可以知道,这次主要讲数据查询,上一章我们只针对单表做了查询的操作,多表联查并没有实现 其实对于任何一个项目来说,多表联查都是比较麻烦的地方,因为项目的“读”操作,特别是多表的“读”,至少占据所有“读”的一半以上 然而至今,据我所知还没有哪一款ORM工具可以灵活处理多表联查:想要不写sql语句,又想性能高,还想用强类型的ling查询方法:这对于多表查询来说比较难

.Net Core MVC 网站开发(Ninesky) 2.3、项目架构调整(续)-使用配置文件动态注入

上次实现了依赖注入,但是web项目必须要引用业务逻辑层和数据存储层的实现,项目解耦并不完全:另一方面,要同时注入业务逻辑层和数据访问层,注入的服务直接写在Startup中显得非常臃肿.理想的方式是,web项目近引用接口而不引用实现,在配置文件中进行配置实现程序集合类,注入业务逻辑层而不必注入数据访问层. 一.数据访问层 在项目中摒弃数据访问层或者使用EntityFramework作为数据访问层. 在项目中数据访问层主要实现数据的存储,仔细看一下EntityFramework发现DbContext

Web应用程序系统的多用户权限控制设计及实现-项目架构【3】

本章主要讲述Web权限管理系统的项目架构,及开发中需要的基本类和相关的CSS,JS文件. 1.1系统结构 本系统搭建开发工具为Visual Studio 2012,采用ASP.NET MVC 4.0技术开发.系统的框架图如下所示: 特别说明:系统需要用到的CSS文件在Content目录下,公有的JS文件在Scripts目录下.其下载链接为:http://files.cnblogs.com/files/wlandwl/CSS_JS.zip 系统页面前台展示主要运用EasyUI1.4.3的展示控件及

iOS项目架构文档

设计的项目架构主要引用MVVM+MVC架构,并以功能模块分级.以下为目录结构. 初级目录: 我们只需要关注SGZH文件夹下的目录,其他为Xcode管理的目录.可以看到此目录为项目初级目录,我们开发过程只需对初级目录内的文件进行操作,其主要划分为3大块: AppDelegate: AppDelegate是程序入口,程序启动和显示逻辑都定义在内部,主要可以让开发人员快速找到代理文件并了解程序从启动到显示过程,也可以快速进行一些初始化测试. Resource: 此目录主要存放一些项目资源文件,如项目切

一种比较实用的iOS SDK项目架构

在SDK开发中,一般会需要经过几个流程,开发SDK,测试SDK,把SDK交付给使用人员,这些东西看似步骤多,过程繁琐,而且每修改一次SDK就需要重复一次上述的过程,增加了一些不必要的操作.当然,如果我们在SDK设计之初就有一个好的项目架构,就可以极大简化开发流程,提高开发效率,本文将带读者一步一步设计搭建一个个人认为比较好的SDK开发架构. 创建基本的工作空间 工作空间这个概念对于很多人并不陌生,平时使用得很多的CocoaPods里面其实就使用到了工作空间,具体一些原理在我的另外一篇博客. 打开