def create_app(config_name): ''' create flask's app object :param config_name: str can be choose modle('develop','product') :return: app ''' app = Flask(__name__) # According to config's name to acquire the class of config param. config_cls = config_map.get(config_name) app.config.from_object(config_cls) # use app to init db global redis_store db.init_app(app) # init tool of redis redis_store = redis.StrictRedis(host=config_cls.REDIS_HOST, port=config_cls.REDIS_PORT) # 利用flask-session,将session 数据保存到redis中去 Session(app) # Session # csrf protect CSRFProtect(app) # 为flask 添加自定义的转换器 app.url_map.converters["re"] = ReConverter # register blueprint from ihub import api_1_0 # solve loop import app.register_blueprint(api_1_0.api, url_prefix="/api/v1.0") # 注册提供静态文件的蓝图 from ihub.web_html import html app.register_blueprint(html) return app
def create_app(config_name): setup_log() app = Flask(__name__) config_class = config_map.get(config_name) app.config.from_object(config_class) # 使用初始化db db.init_app(app) # redis 配置 # 创建redis global redis_store redis_store = redis.Redis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) # session cookie Session(app) # post请求 wtf csrf CSRFProtect(app) # 为flask添加自定义的转换器 app.url_map.converters['re'] = ReConverter # 注册蓝图 from lghome import api_1_0 app.register_blueprint(api_1_0.api) # 注册静态文件蓝图 from lghome import web_html app.register_blueprint(web_html.html) return app
def create_app(config_name): """ 创建flask的应用对象 :param config_name: str 配置模式名字("develop","product") :return: """ app = Flask(__name__) config_class = config_map.get(config_name) app.config.from_object(config_class) # 使用app初始化db db.init_app(app) # 初始化 redis工具 global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST,port=config_class.REDIS_PORT) # 利用flask-session,将session数据保存到redis中 Session(app) # 为flask补充csrf防护 CSRFProtect(app) # 注册蓝图 from miaoyue import api_1_0 app.register_blueprint(api_1_0.api, url_perfix = "/api/v1.0") return app
def create_app(config_name): app = Flask(__name__) # 根据配置模式的类获得对应类型的app config_class = config_map.get(config_name) app.config.from_object(config_class) # app初始化db db.init_app(app) # 初始化redis工具 global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_POST) # 将redis保存到session中 Session(app) # 为flask提供csrf防护 CSRFProtect(app) # 添加re转换器 app.url_map.converters["re"] = ReConverter # 注册蓝图 from ihome import api_1_0 app.register_blueprint(api_1_0.api, url_prefix="/api/v1.0") # 提供注册静态文件的蓝图 from ihome import web_html app.register_blueprint(web_html.html) return app
def create_app(config_name): app = Flask(__name__) config_class = config_map.get(config_name) app.config.from_object(config_class) db.init_app(app) global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) Session(app) search.init_app(app) # CSRFProtect(app) # 添加自定义转换器 from zhizhutemplate.utils.commons import ReConverter app.url_map.converters['re'] = ReConverter # 注册蓝图 from zhizhutemplate import zzt_app app.register_blueprint(zzt_app.api) # 注册静态文件蓝图 from zhizhutemplate import web_static app.register_blueprint(web_static.html) return app
def create_app(config_name): """ 創建flask的應用對象 :params config_name: str 配置模式的名字 ("develop", "product") :return: """ app = Flask(__name__) # 根據配置模式名字獲取配置參數的類 config_class = config_map.get(config_name) app.config.from_object(config_class) db.init_app(app) global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port = config_class.REDIS_PORT) # 利用flask-session,將session數據保存到redis中 Session(app) # 為flask補充csrf防護 CSRFProtect(app) from .home import api as home_blueprint # 註冊藍圖 app.register_blueprint(home_blueprint) return app
def create_app(config_type): # 创建flask应用对象 app = Flask(__name__) # 获取配置模式类型 config_class = config_map.get(config_type) app.config.from_object(config_class) # 初始化db,将db绑定到app db.init_app(app) # 初始化redis工具 global redis_conn redis_conn = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) # 将session数据保存到redis中 Session(app) # 为flask对象补充csrf防护 CSRFProtect(app) # 将自定义转换器添加到app app.url_map.converters['re'] = ReConverter # 注册蓝图到app,使用时再import防止循环导入 from ihome.api_v1 import api app.register_blueprint(api, url_prefix="/api_v1") from ihome.index import html # 访问静态文件的蓝图 app.register_blueprint(html) return app
def create_app(config_name): """ 創建flask的應用對象 :param config_name: str 配置模式的名字 ("develop", "product") :return: """ app = Flask(__name__) # 根據配置模式的名字獲取配置參數的類 config_class = config_map.get(config_name) app.config.from_object(config_class) # 使用app初始化db db.init_app(app) # 初始化 redis redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) # 利用flask-session,將session數據保存到redis中 Session(app) # 為flask補充csrf防護 CSRFProtect(app) # 注冊藍圖 from ihome import api_1_0 # 需要才導入,避免循環導入流程卡死 app.register_blueprint(api_1_0.api, url_prefix="/api/v1.0") return app
def create_app(config_name): """ 创建flask应用对象 :param config_name:str 配置模式的名字("develop","produce") :return:app """ app = Flask(__name__) config_class = config_map.get(config_name) app.config.from_object(config_class) db.init_app(app) # 创建redis连接对象 global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) # 用flask——session将数据保存到redis中 Session(app) # 为flask添充csrf防护 CSRFProtect(app) # 为flask添加自定义的转换器 app.url_map.converters["re"] = ReConverter # 注册蓝图 from ihome import api_1 app.register_blueprint(api_1.api, url_prefix='/api/v1') # 注册提供静态文件的蓝图 from ihome import web_html app.register_blueprint(web_html.html) return app
def create_app(config_name): """ 创建flask的应用对象 :param config_name: str 配置模式的名字 ("develop","product") :return: """ app = Flask(__name__) # 根据配置文件的名字获取配置参数的类 app.config.from_object(config_map.get(config_name)) # 使用app初始化db,这种推迟方法每个flask的扩展都有 db.init_app(app) # 初始化redis工具 global redis_store redis_store = redis.StrictRedis(host=app.config.get('REDIS_HOST'), port=app.config.get('REDIS_PORT')) # 利用flask_session,修改flask保存session信息的机制 Session(app) # 为flask补充csrf防护 CSRFProtect(app) # 为flask添加自定义的转换器 app.url_map.converters["re"] = ReConverter # 注册蓝图 from ihome import api_1_0 # 放在这里是为了解决循环导入的问题 app.register_blueprint(api_1_0.api, url_prefix='/api/v1.0') # 注册提供静态文件的蓝图 from ihome.web_html import html app.register_blueprint(html) return app
def create_app(type): """ 创建flask对象 :param type: str type = (deve,prod) :return: app object """ app = Flask(__name__) # flask对象配置参数 conf = config_map.get(type) app.config.from_object(conf) # app对象初始化db db.init_app(app) # 为flask补充csrf防护 CSRFProtect(app) # 将session数据保存到redis Session(app) # redis存储配置 global redis_conn redis_conn = redis.StrictRedis(host=app.config['REDIS_HOST'], port=app.config['REDIS_PORT'], db=app.config['REDIS_DB']) # 为flask添加转换器 app.url_map.converters['re'] = RegexConverter # 注册蓝图 from ihome.api_v1_0 import api app.register_blueprint(api, url_prefix='/api/v1.0') from ihome.html_web import html app.register_blueprint(html) return app
def create_app(config_name): ''' 创建flask应用对象 :param config_name : str配置模式的名字 ("develop","product") :return: ''' app = Flask(__name__) #根据配置模式的名字配置参数的类 config_cls = config_map.get(config_name) app.config.from_object(config_cls) #使用app初始化数据库 db.init_app(app) global redis_store redis_store = redis.StrictRedis(host=config_cls.REDIS_HOST, port=config_cls.REDIS_PORT) # 利用flask_session,讲session数据保存到redis中 Session(app) # 为flask补充csrf防护 csrf.init_app(app) #注册蓝图 from ihome import api_1_0 app.register_blueprint(api_1_0.api, url_prefix="/api/v1.0") return app
def creat_app(config_name): """创建flask应用对象 :param config_name:str 配置模式的名字 :return: """ app = Flask(__name__) config_class = config_map.get(config_name) ###根据配置模式的名字获取配置参数的类 app.config.from_object(config_class) ##使用appdb db.init_app(app) global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) ##将session数据保存到redis Session(app) ##添加CSRF防护机制 #CSRFProtect(app) ###为flask添加自定义转换器 app.url_map.converters['re'] = ReConverter ###在程序实例中注册该蓝图 from ihome import api_1_0 app.register_blueprint(api_1_0.api, url_prefix="/api/V1.0") ##注册提供静态文件的蓝图 from ihome import web_html app.register_blueprint(web_html.html) return app
def create_app(config_name): """ 创建app :param config_name: str ("develop") ("product") :return: app """ app = Flask(__name__) config_class = config_map.get(config_name) app.config.from_object(config_class) db.init_app(app) CSRFProtect(app) Session(app) # 自定义转换器注册到app里 app.url_map.converters["re"] = ReConverter global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) # 注册蓝图 from . import api_1_0 app.register_blueprint(api_1_0.api, url_prefix="/api/v1.0") # 注册静态文件蓝图 from ihome.web_html import html app.register_blueprint(html) return app
def create_app(config_name): """ 创建flask的应用对象 :param config_name: str 配置模式的名字('develop','product') :return: app """ app = Flask(__name__) # 导入配置信息,根据配置模式的名字获取配置参数的类 config_class = config_map.get(config_name) app.config.from_object(config_class) # 初始化redis工具 global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) # 使用app初始化db db.init_app(app) # 利用flask-session,将session数据保存到redis中 Session(app) # 为flask补充csrf防护 CSRFProtect(app) # 为flask添加自定义的转换器 app.url_map.converters['re'] = ReConverter # 在这里导入api_1_0的原因是为了防止循环导包的问题 from ihome import api_1_0 # 注册蓝图 app.register_blueprint( api_1_0.api, url_prefix='/api/v1.0' ) # url_prefix:前缀 加了之后形成的url:http://127.0.0.1:5000/api/v1.0/ # 注册提供静态文件的蓝图 from ihome import web_html app.register_blueprint(web_html.html) return app
def create_app(config_name): app = Flask(__name__) # 根据配置模式的名字,获取对应配置类 config_class = config_map.get(config_name) app.config.from_object(config_class) # 初始化数据库 db.init_app(app) # 初始化redis数据库 global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) # 利用falsk—session将session保存到redis Session(app) # 为flask补充csrf防护 CSRFProtect(app) # 将自定义的转换器添加到flask应用 app.url_map.converters["re"] = RegexConverter # 注册蓝图 from ihome import api_1_0 app.register_blueprint(api_1_0.api, url_prefix="/api/v1.0/") # 注册提供静态文件的蓝图 from ihome import web_html app.register_blueprint(web_html.html) return app
def create_app(config_name): # 创建app对象 app = Flask(__name__) # 添加配置类 config_class = config_map.get(config_name) app.config.from_object(config_class) # 设置session存储到redis中 Session(app) # 为flask补充csrf防护 # CSRFProtect(app) # 将数据库对象初始化app db.init_app(app) # 修改数据迁移对象 global migrate migrate = Migrate(app, db) # 修改redis连接对象 global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT, db=1, decode_responses=True) # 注册自定义转换器 from .utils.commons import ReConverter app.url_map.converters['re'] = ReConverter # 注册蓝图 from .api_1_0 import api app.register_blueprint(api, url_prefix='/api/v1.0/') # 注册静态文件蓝图 from .web_html import web_html app.register_blueprint(web_html, url_prefix='/') return app
def create_app(config_name): """ 根据不同的配置创建flask 应用 :param config_name: str {"develop","production"} :return: """ app = Flask(__name__) config = config_map.get(config_name) app.config.from_object(config) #初始化数据库 db.init_app(app) #初始化redis db global redis_db redis_db = redis.StrictRedis(host=config.REDIS_HOST, port=config.REDIS_PORT) # flask-session 将session 保存到redis Session(app) # flask 添加csrf 防护 CSRFProtect(app) #为flask 添加url 正则匹配 app.url_map.converters["re"]=ReConverter #注册蓝图 from flask_project import api_1_0 #防止循环导包,推迟导入 app.register_blueprint(api_1_0.api,url_prefix="/api/v1.0") return app
def create_app(config_name): #初始化flask对象 app = Flask(__name__) #根据字典的key,获取到字典的value config_class = config_map.get(config_name) #将配置文件添加到flask对象中 app.config.from_object(config_class) db.init_app(app) # 初始化数据库对象 # db = SQLAlchemy(app) # 创建redis(存储验证码,存储短信验证码和图片验证码) 第一个参数ip 第二个参数端口,第三个参数表示解码,在redis里面进行操作,用来取数据的时候,byte,string global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT, decode_responses=True) # 导入session:目的用来进行持久化操作,不需要每次都让用户进行登陆,我们需要把session存储到redis当中 Session(app) # 开启CSRF保护,把整个flask对象丢进去,需要添加一个SECRET_KEY秘钥 CSRFProtect(app) @app.after_request def after_request(response): # 调用函数生成 csrf_token csrf_token = generate_csrf() # 通过cookie将值传递给前端 response.set_cookie("csrf_token", csrf_token) return response # 添加自定义过滤器 from info.utils.common import do_index_class app.add_template_filter(do_index_class, "indexClass") from info.utils.common import user_login_data @app.errorhandler(404) @user_login_data def error_404_handler(error): user = g.user data = {"user_info": user.to_dict() if user else None} return render_template("news/404.html", data=data) # 注册首页的蓝图 from info.index import index_blue app.register_blueprint(index_blue) # 登陆注册的蓝图 from info.passport import passport_blue app.register_blueprint(passport_blue) # 新闻详情的蓝图 from info.news import news_blue app.register_blueprint(news_blue) # 个人中心的蓝图 from info.user import profile_blue app.register_blueprint(profile_blue) # 后台管理系统蓝图 from info.admin import admin_blue app.register_blueprint(admin_blue) return app
def create_app(config_name): """ 创建flask的应用对象 :param config_name: str 配置模式的模式的名字 ("develop", "product") :return: """ app = Flask(__name__) # 根据配置模式的名字获取配置参数的类 config_class = config_map.get(config_name) app.config.from_object(config_class) # 使用app初始化db, login_manage db.init_app(app) # 使用app初始化login_manage login_manager.init_app(app) # @login_manager.user_loader # def load_user(user_id): # return User.get(user_id) # 注册蓝图 from saihan import admin, adver, seller, user, common app.register_blueprint(common.app_common, url_prefix="/common") app.register_blueprint(admin.app_admin, url_prefix="/admin") app.register_blueprint(adver.app_adver, url_prefix="/adver") app.register_blueprint(seller.app_seller, url_prefix="/seller") app.register_blueprint(user.app_user, url_prefix="/user") @app.route("/") def index(): return redirect(url_for("common.index")) return app
def create_app(config_name): logging.error('000000000') """ 创建app的工厂类 """ app = Flask(__name__) config_class = config_map.get(config_name) app.config.from_object(config_class) # 据库连接对象 绑定 创建好的app db.init_app(app) # 2.创建redis连接对象(专门做缓存的redis) global redis_store redis_store = redis.StrictRedis( host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) # 3.利用flask-session,将session数据保存到redis中 Session(app) # 要配一个专门做session缓存的redis # 4.给flask补充csrf防护 CSRFProtect(app) # 5.注册蓝图( api 是蓝图的名称) from . import api_v_1_0 # 推迟导入 app.register_blueprint(api_v_1_0.api, url_prefix='/api/v1_0') return app
def create_app(config_name): """ 创建flask的应用对象 :param config_name:str 配置模式的模式名字('develop','product') :rtype: object """ app = Flask(__name__) # 根据配置模式的名字获取配置参数的类 config_class = config_map.get(config_name) app.config.from_object(config_class) # 初始化数据库 db.init_app(app) global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) # 利用flask-session将 Session(app) # 为flask补充csrf防护 CSRFProtect(app) # 为flask添加自定义的转换器 app.url_map.converters['re'] = ReConverter # 注册蓝图(解决和db循环导入问题) from ihome_api import api_1_0 app.register_blueprint(api_1_0.api, url_prefix='/api/v1.0') from ihome_api import web_html app.register_blueprint(web_html.html) return app
def Create_APP(config_name): """ 创建flask应用对象 :param config_name: str 配置模式的名字('develop','product') :return: """ app = Flask(__name__) #根据配置模式的名字获取配置参数的类 config_class = config_map.get(config_name) app.config.from_object(config_class) #是用app初始化db db.init_app(app) # 初始化redis工具 global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) # 利用flask-session ,将session数据保存到redis中 Session(app) # 为flask补充csrf防护 CSRFProtect(app) #注册蓝图 from ihome import api_1_0 app.register_blueprint(api_1_0.api, url_prefix="/api/v1.0") return app
def create_app(config_name): """ 创建flask的应用对象 :param config_name: str 配置模式的名字("develop","product") :return: """ app = Flask(__name__) # 根据配置模式的名字 获取对应的配置参数的类 config_class = config_map.get(config_name) app.config.from_object(config_class) # 使用app初始化数据库 db.init_app(app) # 初始化redis global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) # 利用flask-session, 将session数据保存到redis中 Session(app) # 为flask 补充 csrf防护 # CSRFProtect(app) # 注册蓝图 from project import api_v1 app.register_blueprint(api_v1.api, url_prefix='/api/v1') return app
def create_app(config_name): """ 创建flask的应用对象 :param config_name: str 配置模式的模式的名字 ("develop", "product") :return: """ app = Flask(__name__) # 根据配置模式的名字获取配置参数的类 config_class = config_map.get(config_name) app.config.from_object(config_class) # 使用app初始化db db.init_app(app) # 初始化redis工具 global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) # 利用flask-session,将session数据保存到redis中 Session(app) # 为flask补充csrf防护 CSRFProtect(app) # 为flask添加自定义的转换器 app.url_map.converters["re"] = ReConverter # 注册蓝图 from ihome import api_1_0 app.register_blueprint(api_1_0.api, url_prefix="/api/v1.0") # 注册提供静态文件的蓝图 from ihome import web_html app.register_blueprint(web_html.html) return app
def create_app(config_name): ''' 创建flask应用对象 :param config_name: str 配置模式的名字 ('develop', 'product') :return: ''' app = Flask(__name__) # 为flask添加自定义转换器 app.url_map.converters['re'] = ReConverter # 根据配置模式的模式的名字获取配置参数的类 config_class = config_map.get(config_name) app.config.from_object(config_class) # 使用app初始化db db.init_app(app) # 初始化redis工具 global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT, db=5, decode_responses=True) # 利用flask-session,将session数据保存到redis中 Session(app) # 为flask补充csrf防护 CSRFProtect(app) # 注册蓝图 from ihome import api_1_0 app.register_blueprint(api_1_0.api, url_prefix='/api/v1.0') # 注册提供静态文件的蓝图 from ihome import web_html app.register_blueprint(web_html.html) return app
def create_app(config_name): ''' 创建flask的应用对象 :param config_name:str 配置模式名字 ["develop","product"] :return: ''' app = Flask(__name__) # 根据配置模式名字获取配置参数类 config_class = config_map.get(config_name) app.config.from_object(config_class) # 使用app初始化db db.init_app(app) # 创建redis链接对象,下面的host,port可以是另一台电脑的 global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) # 利用flask_session,将session数据保存到redis中 Session(app) # 为flask补充csrf防护 CSRFProtect(app) # 为flask添加自定义正则 app.url_map.converters["re"] = ReConverter # 注册蓝图 from ihome_apps import api_v1_0 app.register_blueprint(api_v1_0.api, url_prefix="/api/v1.0") from ihome_apps.web_html import html app.register_blueprint(html) return app
def create_app(config_name): ''' 创建flask的应用对象 :param config_name: str 配置模式的名字('develop','product') :return: 返回具体的app对象 ''' app = Flask(__name__) # 启动项目的时候选择模式 config_class = config_map.get(config_name) app.config.from_object(config_class) # 将数据库和flask app绑定 db.init_app(app) # 初始化连接redis数据库 global redis_story redis_story = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT, db=2) # 利用flask-session,将session数据保存到redis中 Session(app) # 修改flask里面的session机制 # 为flask补充CSRF机制 CSRFProtect(app) # 就是flask的钩子函数实现的 # 注册蓝图 from .api_v1_0 import api app.register_blueprint(api) return app
def create_app(config_name): """ 创建flask的应用对象 :param config_name: """ app = Flask(__name__) config_class = config_map.get(config_name) app.config.from_object(config_class) # 数据库 db.init_app(app) # 初始化redis工具 global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) # 对flask补充csrf防护 flask_wtf.CSRFProtect(app) # 为flask添加自定义的转换器,, app.url_map.converters["re"] = ReConverter # 注册蓝图 from show_result.lianjia_spyder import lianjia_api_1_0 app.register_blueprint(lianjia_api_1_0.api, url_prefix="/api/v1.0/lianjia") from show_result.user import user_api_1_0 app.register_blueprint(user_api_1_0.api, url_prefix="/api/v1.0/user") # 注册提供静态文件的蓝图 from show_result import web_html app.register_blueprint(web_html.html) return app
def create_app(config_name): """"工厂函数配置""" app = Flask(__name__) config_class = config_map.get(config_name) app.config.from_object(config_class) # 初始化mysql db.init_app(app) # 初始化redis global redis_store redis_store = redis.StrictRedis(host=config_class.REDIS_HOST, port=config_class.REDIS_PORT) # 将session保存到redis Session(app) # 启用CSRF机制保护flask程序 CSRFProtect(app) # 注册re转换器 app.url_map.converters["re"] = ReConvertor # 注册蓝图 from ihome import api_1_0 app.register_blueprint(api_1_0.api, url_prefix="/api/v1.0") # 注册获取静态资源的蓝图 from ihome import web_html app.register_blueprint(web_html.html) return app