python flask

资料:

官方文档:https://dormousehole.readthedocs.io/en/latest/quickstart.html#id2

中文文档杂:https://www.kancloud.cn/hartnett/flask

1.安装
sudo pip install virtualenv
pip install Flask
。。。。
2.极简例子
from flask import Flask
app = Flask(__name__)

@app.route('/upload', methods=['GET', 'POST'])
def hello_world():
    return 'Hello World!'

if __name__ == '__main__':
    app.run()
3.什么是flask

Flask 是一个 web 框架。也就是说 Flask 为你提供工具,库和技术来允许你构建一个 web 应用程序。也就是说使用了flask 可以更好的配置处理以及提供的路由。render_template提供了跳转web页面的能力。

4.配置的三种方式
4.1 app.config.from_object 函数对象

config.py的代码:

import os

BASEDIR = os.path.abspath(os.path.dirname(__file__))


class Config:
    """base config"""
    SECRET_KEY = os.environ.get('SECRET_KEY') or 'secret key'
    SQLALCHEMY_COMMIT_ON_TEARDOWN = True
    SQLALCHEMY_TRACK_MODIFICATIONS = True
    FLASKY_ADMIN = os.environ.get('FLASKY_ADMIN')
    
    FLASKY_MAIL_SENDED = 'jianghan@julanling.com'     # 发件人地址
    FLASKY_MAIL_SUBJECT_PREFIX = '[Flasky]'     # 邮件主题前缀


class ProductionConfig(Config):
    """运行环境配置"""
    SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL') or \
        'sqlite:///' + os.path.join(BASEDIR, 'data.sqlite')
......

config = {
    'development': DevelopmentConfig,
    'testing': ProductionConfig,
    'production': ProductionConfig,
    'default': DevelopmentConfig
}
2、利用Flask类,实例app,并把自定义配置传进去。
如下app.py:


# __name__是本文件名字,
# Flask类里面,会根据此名字,找到app.py所在目录,即默认为根目录。
app = Flask(__name__)
app.config.from_object(config['testing'])



总结:
app.config.from_object('settings.py')#使用模块的名字
#也可以在引用之后直接传入对象
import settings
app.config.from_object(settings)    
4.2 app.config.from_pyfile 配置文件
使用文件名字加载,不局限于.py。直接传入名字就行了
app.config.from_pyfile('settings.py',silent=True)
#默认当配置文件不存在的时候抛出异常,
#使用silent=True的时候只是会返回False,但是不抛出异常
4.3 app.config.from_envvar 环境变量
  $ export SETTINGS='settings.py'
   app.config.from_envvar('SETTINGS')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值