學習過的插件方法.筆記記錄

Flask上下文全局變量
current_app 程序上下文    當前激活程序的程序實例
g                 程序上下文   處理請求時用做臨時存儲的對象。每次請求都會重設這個變量
request        請求上下文   請求對象,封裝了客戶端發出的 HTTP 請求中的內容
session        請求上下文   用戶會話,用於存儲請求之間須要「記住」的值的詞典html

爲了不在每一個視圖函數中都使用重複的代碼,
Flask 提供了註冊通用函數的功能,註冊的函數可在請求被分發到視圖函數以前或以後調用。
請求鉤子使用修飾器實現。Flask 支持如下 4 種鉤子。
before_first_request • :  註冊一個函數,在處理第一個請求以前運行。
before_request • :     註冊一個函數,在每次請求以前運行。
after_request • :        註冊一個函數,若是沒有未處理的異常拋出,在每次請求以後運行。
teardown_request • :   註冊一個函數,即便有未處理的異常拋出,也在每次請求以後運行。
在請求鉤子函數和視圖函數之間共享數據通常使用上下文全局變量 g 。例如, before_
request 處理程序能夠從數據庫中加載已登陸用戶,並將其保存到 g.user 中。隨後調用視
圖函數時,視圖函數再使用 g.user 獲取用戶正則表達式

Jinja2變量過濾器 Hello, {{ name|capitalize }}
過濾器名     說  明
safe       渲染值時不轉義
capitalize   把值的首字母轉換成大寫,其餘字母轉換成小寫
lower     把值轉換成小寫形式
upper      把值轉換成大寫形式
title       把值中每一個單詞的首字母都轉換成大寫
trim       把值的首尾空格去掉
striptags   渲染以前把值中全部的 HTML 標籤都刪掉數據庫

Flask-Bootstrap基模板中定義的塊 bootstrap/base.html
塊  名       說  明
doc         整個 HTML 文檔
html_attribs<html> 標籤的屬性
html <html>     標籤中的內容
head <head>      標籤中的內容
title <title>         標籤中的內容
metas 一組 <meta> 標籤
styles         層疊樣式表定義
body_attribs <body> 標籤的屬性
body <body>     標籤中的內容
navbar        用戶定義的導航條
content       用戶定義的頁面內容
scripts        文檔底部的 JavaScript 聲明bootstrap

 

super() 獲取原來的內容api

@app.errorhandler(404)
def page_not_found(e):
return render_template('404.html'), 404
@app.errorhandler(500)
def internal_server_error(e):
return render_template('500.html'), 500
return render_template('500.html'), 500安全


WTForms支持的HTML標準字段
字段類型     說  明
StringField     文本字段
TextAreaField   多行文本字段
PasswordField    密碼文本字段
HiddenField        隱藏文本字段
DateField     文本字段,值爲 datetime.date 格式
DateTimeField    文本字段,值爲 datetime.datetime 格式
IntegerField   文本字段,值爲整數
DecimalField   文本字段,值爲 decimal.Decimal
FloatField     文本字段,值爲浮點數
BooleanField    複選框,值爲 True 和 False
RadioField     一組單選框
SelectField    下拉列表
SelectMultipleField 下拉列表,可選擇多個值
FileField        文件上傳字段
SubmitField    表單提交按鈕
FormField     把表單做爲字段嵌入另外一個表單
FieldList    一組指定類型的字段服務器

WTForms驗證函數
驗證函數     說  明
Email       驗證電子郵件地址
EqualTo     比較兩個字段的值;經常使用於要求輸入兩次密碼進行確認的狀況
IPAddress      驗證 IPv4 網絡地址
Length       驗證輸入字符串的長度
NumberRange    驗證輸入的值在數字範圍內
Optional       無輸入值時跳過其餘驗證函數
Required     確保字段中有數據
Regexp      使用正則表達式驗證輸入值
URL       驗證 URL
AnyOf        確保輸入值在可選值列表中
NoneOf      確保輸入值不在可選值列表中網絡


Flask-Bootstrap基模板中定義的塊
塊  名         說  明
doc           整個 HTML 文檔
html_attribs       <html>標籤的屬性
html           <html> 標籤中的內容
head          <head> 標籤中的內容
title           <title> 標籤中的內容
metas          一組 <meta> 標籤
styles          層疊樣式表定義
body_attribs         <body> 標籤的屬性
body           <body> 標籤中的內容
navbar          用戶定義的導航條
content         用戶定義的頁面內容
scripts          文檔底部的 JavaScript 聲明session

最經常使用的SQLAlchemy列類型
類型名       Python類型 說  明
Integer      int 普通整數,通常是 32 位
SmallInteger    int 取值範圍小的整數,通常是 16 位
BigInteger     int 或 long 不限制精度的整數
Float       float 浮點數
Numeric      decimal.Decimal 定點數
String       str 變長字符串
Text       str 變長字符串,對較長或不限長度的字符串作了優化
Unicode      unicode 變長 Unicode 字符串
UnicodeText   unicode 變長 Unicode 字符串,對較長或不限長度的字符串作了優化
Boolean      bool 布爾值
Date       datetime.date 日期
Time       datetime.time 時間
DateTime     datetime.datetime 日期和時間
Interval      datetime.timedelta 時間間隔
Enum       str 一組字符串
PickleType     任何 Python 對象 自動使用 Pickle 序列化
LargeBinary    str 二進制文件app

最常使用的SQLAlchemy列選項
選項名         說  明
primary_key      若是設爲 True ,這列就是表的主鍵
unique         若是設爲 True ,這列不容許出現重複的值
index           若是設爲 True ,爲這列建立索引,提高查詢效率
nullable          若是設爲 True ,這列容許使用空值;若是設爲 False ,這列不容許使用空值
default         爲這列定義默認值

經常使用的SQLAlchemy關係選項
選項名     說  明
backref     在關係的另外一個模型中添加反向引用
primaryjoin     明確指定兩個模型之間使用的聯結條件。只在模棱兩可的關係中須要指定
lazy        指定如何加載相關記錄。可選值有 select (首次訪問時按需加載)、 immediate (源對象加
載後就加載)、 joined (加載記錄,但使用聯結)、 subquery (當即加載,但使用子查詢),
noload(永不加載)和 dynamic (不加載記錄,但提供加載記錄的查詢)
uselist     若是設爲 Fales ,不使用列表,而使用標量值
order_by   指定關係中記錄的排序方式
secondary   指定多對多關係中關係表的名字
secondaryjoin SQLAlchemy 沒法自行決定時,指定多對多關係中的二級聯結條件

經常使用的SQLAlchemy查詢過濾器
過濾器     說  明
filter()     把過濾器添加到原查詢上,返回一個新查詢
filter_by()   把等值過濾器添加到原查詢上,返回一個新查詢
limit()     使用指定的值限制原查詢返回的結果數量,返回一個新查詢
offset()    偏移原查詢返回的結果,返回一個新查詢
order_by()  根據指定條件對原查詢結果進行排序,返回一個新查詢
group_by()   根據指定條件對原查詢結果進行分組,返回一個新查詢

最常使用的SQLAlchemy查詢執行函數
方 法       說  明
all()        以列表形式返回查詢的全部結果
first()       返回查詢的第一個結果,若是沒有結果,則返回 None
first_or_404()    返回查詢的第一個結果,若是沒有結果,則終止請求,返回 404 錯誤響應
get()        返回指定主鍵對應的行,若是沒有對應的行,則返回 None
get_or_404()   返回指定主鍵對應的行,若是沒找到指定的主鍵,則終止請求,返回 404 錯誤響應
count()        返回查詢結果的數量
paginate()      返回一個 Paginate 對象,它包含指定範圍內的結果

Flask-Login要求實現的用戶方法
方  法         說  明
is_authenticated()     若是用戶已經登陸,必須返回 True ,不然返回 False
is_active()         若是容許用戶登陸,必須返回 True ,不然返回 False 。若是要禁用帳戶,能夠返回 False
is_anonymous()     對普通用戶必須返回 False
get_id()         必須返回用戶的惟一標識符,使用 Unicode 編碼字符串

 

 

Flask-Mail SMTP服務器的配置配  置        默認值     說  明MAIL_SERVER    localhost     電子郵件服務器的主機名或 IP 地址MAIL_PORT        25         電子郵件服務器的端口MAIL_USE_TLS      False       啓用傳輸層安全(Transport Layer Security,TLS)協議MAIL_USE_SSL      False       啓用安全套接層(Secure Sockets Layer,SSL)協議MAIL_USERNAME   None        郵件帳戶的用戶名MAIL_PASSWORD    None        郵件帳戶的密碼

相關文章
相關標籤/搜索