最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Flask框架Flask-Login用法分析

 更新時(shí)間:2018年07月23日 08:42:28   作者:噴跑的豆子  
這篇文章主要介紹了Flask框架Flask-Login用法,結(jié)合實(shí)例形式分析了Flask-Login插件進(jìn)行登錄驗(yàn)證的相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下

本文實(shí)例講述了Flask框架Flask-Login用法。分享給大家供大家參考,具體如下:

Flask-Login插件中帶了6種信號(hào),可以基于其中的信號(hào)做一些額外工作,比如user_logged_in來記錄用戶的登錄次數(shù)和登錄IP等。

安裝

pip install flask-login

初始化

import flask import Flask
from flask_login import LoginManager
app = Flask(__name__)
login_manager = LoginManager()
login_manager.init_app(app)

UserMixin

flask-login提供了UserMixin,有一些用戶相關(guān)的屬性。

  • is_authenticated:是否被驗(yàn)證
  • is_active:是否被激活
  • is_anonymous:是否匿名用戶
  • get_id():獲得用戶的Id,并轉(zhuǎn)換Unicode類型

可以在創(chuàng)建模型的時(shí)候繼承UserMixin:

from flask_login import UserMixin,login_user
from sqlalchemy import create_engine,Column,String,Integer
from sqlalchemy.ext.declaractive import declaractive_base
engine = create_engine("mysql+pymysql://root:123456@localhost/pythondb?charset=utf8")
Base = declaractive_base()
class User(Base,UserMixin):
  __tablename__ = "user"
  id = Column(Integer,primary_key=True)
  name = Column(String(16))
  password = Column(String(16))
  def login(self):
    login_user(self)

當(dāng)調(diào)用login方法時(shí),登錄用戶就會(huì)觸發(fā)user_logged_in信號(hào),開發(fā)者可以在此做一些自定義操作,如增加登錄次數(shù):

from flask_login import user_logged_in
@user_logged_in.connect_via(app)
def _logged_in(sender,user,**extra):
  ...

使用user_loader裝飾器的回調(diào)函數(shù)非常重要,它將決定user對(duì)象是否在登錄狀態(tài):

# login_manager為上面初始化的login_manager
@login_manager.user_loader
def user_loader(id):
  return session.query(User).filter_by(id=id).first()

login_required

在開發(fā)過程中,常常會(huì)遇到這樣的需求,某個(gè)接口必須要登錄情況下才可以獲取信息,login_required正好可以滿足這一需求

from flask_login import login_required
@app.route("/user_info")
@login_required
def user_info():
  ...

獲取用戶的信息,必須先登錄才可以獲取信息。

希望本文所述對(duì)大家基于Flask框架的Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 一文帶你手撕Python之散列類型

    一文帶你手撕Python之散列類型

    這篇文章主要介紹了Python字典的定義、操作方法和集合的基本概念,字典以鍵值對(duì)形式存儲(chǔ)數(shù)據(jù),可通過鍵訪問值,操作包括增刪改查等,集合是無序不重復(fù)的數(shù)據(jù)結(jié)構(gòu),適用于去重和集合運(yùn)算,需要的朋友可以參考下
    2024-09-09
  • Python的Tqdm模塊實(shí)現(xiàn)進(jìn)度條配置

    Python的Tqdm模塊實(shí)現(xiàn)進(jìn)度條配置

    這篇文章主要介紹了Python的Tqdm模塊實(shí)現(xiàn)進(jìn)度條配置,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • python實(shí)現(xiàn)計(jì)算圖形面積

    python實(shí)現(xiàn)計(jì)算圖形面積

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)計(jì)算圖形面積,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-02-02
  • python3應(yīng)用windows api對(duì)后臺(tái)程序窗口及桌面截圖并保存的方法

    python3應(yīng)用windows api對(duì)后臺(tái)程序窗口及桌面截圖并保存的方法

    今天小編就為大家分享一篇python3應(yīng)用windows api對(duì)后臺(tái)程序窗口及桌面截圖并保存的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • Python 腳本拉取 Docker 鏡像問題

    Python 腳本拉取 Docker 鏡像問題

    這篇文章主要介紹了 Python 腳本拉取 Docker 鏡像問題,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-11-11
  • Ubuntu下Python2與Python3的共存問題

    Ubuntu下Python2與Python3的共存問題

    Linux系統(tǒng)一般自帶Python,有時(shí)候又自己下載了Python,因此有可能Python2和Python3同時(shí)存在。那么當(dāng)我們在Terminal鍵入python的時(shí)候,會(huì)調(diào)出哪個(gè)Python呢?本文即解決這個(gè)問題
    2018-10-10
  • python global的創(chuàng)建和修改實(shí)例講解

    python global的創(chuàng)建和修改實(shí)例講解

    在本篇文章里小編給大家整理了一篇關(guān)于python global的創(chuàng)建和修改實(shí)例講解內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2021-09-09
  • Python中標(biāo)準(zhǔn)庫array數(shù)組操作舉例詳解

    Python中標(biāo)準(zhǔn)庫array數(shù)組操作舉例詳解

    這篇文章主要介紹了Python中標(biāo)準(zhǔn)庫array數(shù)組操作的相關(guān)資料,Python的array模塊提供了固定類型數(shù)組類,用于高效存儲(chǔ)同類型元素,節(jié)省內(nèi)存并支持?jǐn)?shù)值計(jì)算,需要的朋友可以參考下
    2025-04-04
  • Python發(fā)送郵件功能示例【使用QQ郵箱】

    Python發(fā)送郵件功能示例【使用QQ郵箱】

    這篇文章主要介紹了Python發(fā)送郵件功能,結(jié)合實(shí)例形式分析了Python使用QQ郵箱進(jìn)行郵件發(fā)送的相關(guān)設(shè)置與使用技巧,需要的朋友可以參考下
    2018-12-12
  • Pycharm終端顯示PS而不顯示虛擬環(huán)境名的解決

    Pycharm終端顯示PS而不顯示虛擬環(huán)境名的解決

    這篇文章主要介紹了Pycharm終端顯示PS而不顯示虛擬環(huán)境名的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06

最新評(píng)論

黔西| 吴堡县| 仙居县| 赣榆县| 七台河市| 宁陵县| 启东市| 丰顺县| 海原县| 日土县| 九台市| 三亚市| 汪清县| 湘阴县| 苗栗县| 新化县| 云南省| 托克逊县| 宁化县| 南陵县| 大足县| 伊川县| 资源县| 新田县| 新乡县| 拉孜县| 景洪市| 平南县| 科技| 故城县| 平凉市| 资中县| 修水县| 宁城县| 邵东县| 潜山县| 江永县| 鹤庆县| 临颍县| 沧源| 遵化市|