Flash框架学习
學習資料:
b站:??????2021年史上最強Flask框架 Flask6天速成從入門到精通(無償分享附贈課件資料)_嗶哩嗶哩_bilibilid
? ? ? ? 稍后持續更新,如有錯誤,請大佬們糾正?
Day1?
一、Flask對象初始化參數
二、三種配置加載方式
(一)從配置對象加載:擁有繼承性,但容易暴露敏感代碼
(二)配置文件中加載:保護了敏感代碼的泄露,但是文件路徑是固定不變,每次在不同的編譯環境下需要更改代碼
(三)從環境變量中加載:獨立、保護敏感代碼,但是不方便,每次都需要設置環境變量
下面是相關的配置加載的代碼
""" Author:Lucky_bacon Tool:Pycham、python3 """# 導入Flas k類庫 from flask import Flask#配置對象中加載配置信息 # class DefaultConfig(object): # ''' # 默認配置 # ''' # SECRET_KEY = 'lUCKY_BACON配置對象加載' #配置信息#引用__name__函數,url指鏈接后綴,static_folder是文件存放位置 app = Flask(__name__,static_url_path='/s',static_folder='static_files')#配置 # app.config.from_object(DefaultConfig)#對象的設置 # app.config.from_pyfile('setting.py')#文件加載的配置屬性,調用了setting。py文件里面的信息 app.config.from_envvar('ENVOR_SETTING') # app.config.from_envvar('ENVOR_SETTING',silent=True) #環境變量的加載,里面的變量是自己去定義的,silent的作用:當環境變量不存在時,跳過它,避免報錯,并返回個None# 視圖函數(路由) @app.route('/')#輸出數據函數 def index():#輸出配置信息(配置對象加載)print(app.config['SECRET_KEY'])return '<h1>Hello Flask!<h1>'# 啟動實施(只在當前模塊運行) if __name__ == '__main__':app.run()所以我們一般結合了三者的優缺點,采用了兩者結合的方式來進行配置加載:對象加載默認配置+環境變量中加載來保護敏感信息
""" Author:Lucky_bacon Tool:Pycham、python3 """# 導入Flas k類庫 from flask import Flask#配置對象中加載配置信息 class DefaultConfig(object):'''默認配置'''SECRET_KEY = 'lUCKY_BACON' #配置信息#創建一個flask工廠對象函數 def creat_flask_app(config):#引用__name__函數,url指鏈接后綴,static_folder是文件存放位置app = Flask(__name__,static_url_path='/s',static_folder='static_files')#配置app.config.from_object(DefaultConfig)#對象的設置app.config.from_envvar('ENVOR_SETTING')# app.config.from_envvar('ENVOR_SETTING',silent=True)#環境變量的加載,里面的變量是自己去定義的,silent的作用:當環境變量不存在時,跳過它,避免報錯,并返回個Nonereturn app#如果不返回的話,下面的調用函數就無法獲取信息app = creat_flask_app(DefaultConfig)#調用創立的函數# 視圖函數(路由) @app.route('/') #輸出數據函數 def index():#輸出配置信息(配置對象加載)print(app.config['SECRET_KEY'])return '<h1>Hello Flask!<h1>'# 啟動實施(只在當前模塊運行) if __name__ == '__main__':app.run()在這里的環境變量ENVOR_SETTING一定要記得添加環境變量,不然會報錯,說環境變量ENVOR_SETTING沒有定義
?
?
?
setting.py的代碼
""" Author : Lucky_bacon Tool : Pycham、python3 """ SECRET_KEY = 'lUCKY_BACON real vaul'三、app.run()函數的使用
總結
- 上一篇: 解决Windows无法加载中文(中国)-
- 下一篇: macOS 输入法快速切换工具 —— K