def setUp(self): db.create_all() user1 = User(name='user1', email='*****@*****.**', is_admin=True) user1.password = hashlib.md5('pass1').hexdigest() db.session.add(user1) db.session.commit() self.token = user1.generate_auth_token() self.client = current_app.test_client() self.auth_header = {'token': self.token}
def create_app(): """ 初始化app :return: """ app = Flask(__name__) app.config.from_object('app.secure') app.config.from_object('app.setting') login_manager.init_app(app) login_manager.login_view = 'web.login' login_manager.login_message = '请先登录或注册' db.init_app(app) with app.app_context(): db.create_all() register_blueprint(app) return app
def create_app(): ''' 系统配置与蓝图需要绑定app :return: ''' app = Flask(__name__) app.config.from_object('app.secure') app.config.from_object('app.setting') register_blueprint(app) db.init_app(app) login_manager.init_app(app) login_manager.login_view = 'web.login' login_manager.login_message = '请先登录或者注册' mail.init_app(app) with app.app_context(): db.create_all() return app
def create_app(): app = Flask(__name__)#实例化Flask核心对象 #读取配置文件 app.config.from_object('app.secure_config') app.config.from_object('app.setting_config') register_blueprint(app) #蓝图注册 #数据库的初始化 db.init_app(app) #loginManger的初始化 login_manager.init_app(app) login_manager.login_view = 'web.login' login_manager.login_message = '请先登录或注册' db.create_all(app=app) return app
def create_app(): app = Flask(__name__) # 导入配置 app.config.from_object('app.secure') app.config.from_object('app.setting') # 调用蓝图 register_blueprint(app) login_manager.init_app(app) login_manager.login_view = 'web.login' login_manager.login_message = '请先登录或注册' mail.init_app(app) # init_app并没有使用self.app保存app db.init_app(app) # 故需要重新传入 db.create_all(app=app) return app
def create_app(): app = Flask(__name__) app.config.from_object('app.secure') app.config.from_object('app.setting') register_blueprint(app) db.init_app(app) login_manager.init_app(app) login_manager.login_view = 'web.login' login_manager.login_message = '请先登陆或注册' mail.init_app(app) # db.init_app 方法没有保存核心对象 只作临时参数 所以create_all()方法还要传入核心对象 # 或者 让create_all 自己寻找current_app 传入 # with app.app_context(): # db.create_all() # 或者 一开始在model中实例化db = SQLAlchemy() 时 把app 作为属性 参数传入 但是不同模块导入app实例太过麻烦 db.create_all(app=app) return app
def register_plugin(app): # 解决跨域问题 from flask_cors import CORS cors = CORS() cors.init_app(app, resources={"/*": {"origins": "*"}}) # 连接数据库 from app.models.base import db db.init_app(app) with app.app_context(): # 手动将app推入栈 db.create_all() # 首次模型映射(ORM ==> SQL),若无则建表; 初始化使用 # Debug模式下可以查阅 API文档 if app.config['DEBUG']: from flasgger import Swagger from app.api.v1 import template swagger = Swagger( template=template) # 可以将secure.py中的SWAGGER全部写入template swagger.init_app(app)
def create_app(): app = Flask(__name__) #决定了根目录是app,而不是fisher,可以指定static_folder,static_url # 蓝图 blueprint来实现分文件功能 app->蓝图->视图函数 wen是一个蓝图 # 载入配置文件, 配置文件规定只能写大写, DEBUG是模块中的默认值 为false, 如果有小写的,就会出错 app.config.from_object('app.secure') app.config.from_object('app.setting') register_blueprint(app) db.init_app(app) #以下是两种方法,第三种方法是在初始化db时传入app # with app.app_context(): # db.create_all() loginmanager.init_app(app) loginmanager.login_view = 'web.login' #致命登陆的视图函数,需要登陆时自动跳转 loginmanager.login_message = '请先登录或注册' mail.init_app(app) with app.app_context(): db.create_all(app=app) return app
def create_app(): """ 创建flask核心对象app :return: """ app = Flask(__name__) app.config.from_object('app.secure') app.config.from_object('app.setting') register_blueprint(app) db.init_app(app) login_manager.init_app(app) login_manager.login_view = 'auth.login' login_manager.login_message = "请先登录或注册" with app.app_context(): db.create_all() return app
def register_plugin(app): from app.models.base import db from flask_migrate import Migrate from app.libs.extensions import cache # from flask_debugtoolbar import DebugToolbarExtension from flask_apscheduler import APScheduler db.init_app(app) migrate = Migrate() migrate.init_app(app=app, db=db) cache.init_app(app) # toolbar = DebugToolbarExtension() # toolbar.init_app(app) # scheduler = APScheduler() # scheduler.init_app(app) # scheduler_add_job(scheduler) # 添加定时任务 # scheduler.start() with app.app_context(): db.create_all()
def create_app(): app = Flask(__name__) app.config.from_object('app.secure') app.config.from_object('app.setting') register_blueprint(app) db.init_app(app) # init login_manager login_manager.init_app(app) # define login view_function from end_point login_manager.login_view = 'web.login' login_manager.login_message = 'please login in or sign up' # init mail mail.init_app(app) # db.create_all(app=app) # another way: with app.app_context(): db.create_all() return app
def create_app(): app = Flask(__name__) app.config.from_object('app.secure') app.config.from_object('app.setting') register_blueprint(app) # 将sql alchemy对象注册到APP实例上 db.init_app(app=app) with app.app_context(): db.create_all() # 将LoginManager注册到APP实例上 login_manager.init_app(app=app) # 指定登录页面(在未登录时打开需要登录的页面,会自动跳转到该页面) login_manager.login_view = 'web.login' # 指定跳转到登录页面时flash的消息内容 login_manager.login_message = '请先登录或注册' mail.init_app(app=app) return app
def create_app(): app = Flask(__name__) app.config.from_object('app.secure') app.config.from_object('app.setting') register_blueprint(app) db.init_app(app) db.create_all(app=app) login_manager.init_app(app) login_manager.login_view = 'web.login' login_manager.login_message = "请先登录或注册" @login_manager.user_loader def load_user(user_id): from app.models.user import User user = db.session.query(User).get(user_id) return user return app
def create_app(): app = Flask(__name__) app.config.from_object('app.setting') app.config.from_object('app.secure') # 注册蓝图 from app.web import web app.register_blueprint(web) # 注册login_manager login_manager.init_app(app) # 注册SQLAlchemy from app.models.base import db db.init_app(app) # db.drop_all(app=app) db.create_all(app=app) # 注册邮件插件 mail.init_app(app) return app
def create_app(): app = flask.Flask(__name__) app.config.from_object('app.setting') app.config.from_object('app.secure') # 注册蓝图 register_blueprint(app) # 初始化flask_login login_manager.init_app(app) login_manager.login_view = 'web.login' login_manager.login_message = '请先登录或注册' # 初始化邮件系统 mail.init_app(app=app) # 初始化数据库 db.init_app(app) # db.drop_all(app=app) db.create_all(app=app) return app
def create_app(): app = Flask(__name__, template_folder='templates', static_folder='static') app.config.from_object('app.setting') app.config.from_object('app.secure') #注册模块蓝图 register_web_blueprint(app) #注册数据库 db.init_app(app) db.create_all(app=app) #初始化login login_manager.init_app(app) #初始化登入野页面 login_manager.login_view = 'web.login' login_manager.login_message_category = 'warning' login_manager.login_message = u'请先登入!' ckeditor.init_app(app) return app
def create_app(): app = Flask(__name__) app.config.from_object("app.secure") app.config.from_object("app.settings") # 注册蓝图 register_blueprint(app) # 注册SQLAlchemy db.init_app(app) # 创建所有表 with app.app_context(): db.create_all() # 注册LoginManager login_manager.init_app(app) login_manager.login_view = 'web.login' login_manager.login_message = '请先登录或注册' # 注册Mail mail.init_app(app) return app
def creat_app(): """创建 app""" app = Flask(__name__) # 配置文件相关 app.config.from_object("app.secure") app.config.from_object("app.setting") # 注册蓝图 register_blueprint(app) # 注册SQLAlchemy db.init_app(app) # 创建数据表 with app.app_context(): db.create_all() # 登陆相关 login_manager.init_app(app) login_manager.login_view = "web.login" login_manager.login_message = "请先登录或注册" # 邮件相关 mail.init_app(app) return app
def create_app(): app = Flask(__name__, static_url_path='/static') # print(__name__) 应用的根路径:app, 静态文件路径从此开始 # 导入配置文件 app.config.from_object('app.secure') app.config.from_object('app.setting') # 给app 注册蓝图 register_blueprint(app) # 注册登录管理器 login_manager.init_app(app) login_manager.login_view = 'web.login' login_manager.login_message = '请先登录' # Models db.init_app(app) # 使current_app生效:将应用上下文入栈 with app.app_context(): # db.drop_all() db.create_all() return app
def create_app(): app = Flask(__name__, template_folder='templates') app.config.from_object('app.config.secure') app.config.from_object('app.config.setting') register_blueprint(app) init_loginmanager_app(app) # 初始化mail插件 mail.init_app(app) # 创建所有数据库映射 db.init_app(app) # 防止create_all异常的三种方法: # 一: app= 传入创建的app对象 # db.create_all(app=app) # 二: 使用上下文管理器将当前app对象推入栈顶 with app.app_context(): db.create_all() # 三: 在使用SQLAlchemy()实例化SQLAlchemy对象时传入app关键词参数 return app
def creat_app(): app = Flask(__name__) app.config.from_object('app.source') # 引入config.py配置文件 app.config.from_object('app.setting') # 调用下面的 def registe_blueprint(app)函数注册app # 实际上执行这句代码 web = blueprints.Blueprint('web',__name__) #得到一个蓝图对象 registe_blueprint(app) login_manager.init_app(app) #注册login_manager login_manager.login_view = 'web.login' #不会报没有权限的错误,而是直接跳转到登录页面 login_manager.login_message = '请先登录或注册' #跳转登录页面后的提示信息 with app.app_context(): #这三行跟下面注释的两行效果一样 db.init_app(app) db.create_all() # db.init_app(app) # db.create_all(app=app) cache.init_app(app) mail.init_app(app) return app
def create_app(): app = Flask(__name__) app.config.from_object("app.secure") app.config.from_object("app.setting") register_blueprint(app) # 调用蓝图注册函数 db.init_app(app) # 写法一:传入关键字参数 # db.create_all(app=app) # 写法二:with语句 + 上下文管理器 with app.app_context(): db.create_all() login_manager.init_app(app) # 初始化 login_manager login_manager.login_view = "web.login" login_manager.login_message = "请先登录或注册" mail.init_app(app) # create_db_table() # 创建数据表 return app
def create_app(): app = Flask(__name__) # 读取配置文件 app.config.from_object('app.secure') app.config.from_object('app.setting') # 注册蓝图 register_blueprint(app) # 注册 SQLAlchemy 模块 db.init_app(app) db.create_all(app=app) # 注册 Login 模块 login_manger.init_app(app) login_manger.login_view = 'web.login' login_manger.login_message = '请先登录或注册' # 注册 Mail 模块 mail.init_app(app) return app
def create_app(): app = Flask(__name__) # bootstrap = Bootstrap(app) # moment = Moment(app) app.config.from_object("app.config") app.config.from_object("app.secure") register_blueprint(app) # 加载蓝图 # 插件管理 # Bootstrap(app) bootstrap.init_app(app) moment.init_app(app) # bootstrap = Bootstrap(app) pagedown.init_app(app) mail.init_app(app) db.init_app(app) # 初始化登陆管理插件 login_manger.init_app(app) login_manger.login_view = 'web.login' login_manger.login_message = '请先登录或注册' with app.app_context(): # 核心对象入栈 db.create_all() return app
def create_app(): app = Flask(__name__) # app = Flask(__name__, static_folder='view_models/statics')在这里可以设置默认的静态文件夹的位置,在这里同样也可以指定模板文件夹 app.config.from_object('app.secure') app.config.from_object('app.setting') register_blueprint(app) # 注册蓝图 # 使用应用上下文注入app db.init_app(app) # 初始化LoginManager login_manager.init_app(app) # 用户登录及权限插件 login_manager.login_view = 'web.login' # 如果用户权限不足,将会跳转到登录页面 login_manager.login_message = '请先登录或注册' mail.init_app(app) # 注册flask-mail组件 with app.app_context(): db.create_all() # db.init_app(app)# 注册SQAlchemy # db.create_all(app=app)# 生成数据表 return app
def create_app(): app = Flask(__name__) app.config.from_object('app.setting') app.config.from_object('app.secure') register_blueprint(app) db.init_app(app) login_manager.init_app(app) login_manager.login_view = 'web.login' # login_required验证用户没登录时引导用户到登录页面 login_manager.login_message = '请先登录或注册' # 替换引导到登录界面的提示信息 mail.init_app(app) # db.create_all() # 上面这样写会报错: RuntimeError: No application found. # Either work inside a view function or push an application # 方案一: 将app核心对象作为关键字参数传入 db.create_all(app=app) with app.app_context(): db.create_all() return app
def create_app(): # 实例化核心对象 app = Flask(__name__) # 这里的__name__决定了应用程序的根目录 # print(__name__) # 从配置文件载入配置 app.config.from_object('app.secure') app.config.from_object('app.setting') # 调用注册函数 register_blueprint(app) # 关联模型层到核心对象 db.init_app(app) # 把数据模型映射到数据库里去 db.create_all(app=app) # 关联登录管理器到核心对象 login_manager.init_app(app) # 自动跳转到登陆页面 login_manager.login_view = 'web.login' # 自定义未登录提示 login_manager.login_message = '请先注册登陆' # 注册email插件 mail.init_app(app) return app
def create_app(): ''' 初始化核心对象,包含初始化要做的所有操作 :return:app核心对象 ''' app = Flask(__name__) app.config.from_object('app.secure') app.config.from_object('app.setting') register_blueprint(app) db.init_app(app) login_manager.init_app(app) login_manager.login_view = 'web.login' login_manager.login_message = '请先登录或注册' mail.init_app(app) db.create_all(app=app) return app
def create_app(): app = Flask(__name__) app.config.from_object('app.secure') app.config.from_object('app.setting') register_web_blueprint(app) # 注册SQLAlchemy db.init_app(app) # 注册email模块 mail.init_app(app) # 注册login模块 login_manager.init_app(app) login_manager.login_view = 'web.login' login_manager.login_message = '请先登录或注册' # 注册flask-cache模块 # cache.init_app(app) with app.app_context(): db.create_all() return app
def create_app(): """ 创建app(flask核心对象)对象 :return:app """ app = Flask(__name__) # 加载配置文件,配置文件在当前目录下config.py # 注意:app.config['DEBUG']其中的 DEBUG 必须为大写,因为from_object这种形式加载config必须名称为大写,不然会自己过滤掉 app.config.from_object('app.secure') app.config.from_object('app.setting') register_blueprint(app) # 将sqlalchemy db的对象和app进行挂钩 sqlalchemy db -> app # 读取建立数据库连接 db.init_app(app) # 用户登录空间 login_manager.init_app(app) # 如果页面需要登录后访问,那么没有登录的情况下 自动跳转到 endpint = web.register 注册页面 login_manager.login_view = "web.login" # 跳转到注册页提示的Flash 闪现消息指定 login_manager.login_message = "请先登录!" # create_all创建数据模型 到mysql db.create_all(app=app) return app
def create_app(): # __name__ 指的是 app 而不是 fishbook,所以 app 才是应用程序的根目录 app = Flask(__name__, static_folder='static') # app.config.from_object('config') app.config.from_object('app.secure') app.config.from_object('app.setting') register_blueprint(app) # app 和登陆插件 flash-login 关联 login_manager.init_app(app) login_manager.login_view = 'web.login' login_manager.login_message = '请先登陆或注册' mail.init_app(app) # app 和 sql alchemy 关联 db.init_app(app) # 根据模型创建数据库表 # db.create_all(app=app) with app.app_context(): db.create_all() return app
def register_plugin(app): from app.models.base import db db.init_app(app) with app.app_context(): db.create_all()