欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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對象是否在登錄狀態(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():
  ...

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

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

相關(guān)文章

  • python3讀取autocad圖形文件.py實(shí)例

    python3讀取autocad圖形文件.py實(shí)例

    這篇文章主要介紹了python3讀取autocad圖形文件.py實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • Python學(xué)習(xí)之異常處理的避坑指南

    Python學(xué)習(xí)之異常處理的避坑指南

    這篇文章主要介紹了Python中異常處理的一些避坑指南,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Python有一定幫助,感興趣的小伙伴可以學(xué)習(xí)一下
    2022-03-03
  • Python Matplotlib繪制箱型圖(箱線圖)boxplot的方法詳解

    Python Matplotlib繪制箱型圖(箱線圖)boxplot的方法詳解

    箱線圖(箱型圖)主要作用是發(fā)現(xiàn)數(shù)據(jù)內(nèi)部整體的分布分散情況,包括上下限、各分位數(shù)、異常值等,本文為大家整理了Matplotlib繪制箱型圖的所以方法,希望對大家有所幫助
    2023-05-05
  • Python函數(shù)關(guān)鍵字參數(shù)及用法詳解

    Python函數(shù)關(guān)鍵字參數(shù)及用法詳解

    本文主要介紹了Python函數(shù)關(guān)鍵字參數(shù)及用法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • 簡單了解python調(diào)用其他腳本方法實(shí)例

    簡單了解python調(diào)用其他腳本方法實(shí)例

    這篇文章主要介紹了簡單了解python調(diào)用其他腳本方法實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • Python functools模塊學(xué)習(xí)總結(jié)

    Python functools模塊學(xué)習(xí)總結(jié)

    這篇文章主要介紹了Python functools模塊學(xué)習(xí)總結(jié),本文講解了functools.partial、functool.update_wrapper、functool.wraps、functools.reduce、functools.cmp_to_key、functools.total_ordering等方法的使用實(shí)例,需要的朋友可以參考下
    2015-05-05
  • 詳解Python中四種關(guān)系圖數(shù)據(jù)可視化的效果對比

    詳解Python中四種關(guān)系圖數(shù)據(jù)可視化的效果對比

    python關(guān)系圖的可視化主要就是用來分析一堆數(shù)據(jù)中,每一條數(shù)據(jù)的節(jié)點(diǎn)之間的連接關(guān)系從而更好的分析出人物或其他場景中存在的關(guān)聯(lián)關(guān)系。本文將制作四個(gè)不同的關(guān)系圖的可視化效果,感興趣的可以了解一下
    2022-11-11
  • pandas數(shù)據(jù)篩選和csv操作的實(shí)現(xiàn)方法

    pandas數(shù)據(jù)篩選和csv操作的實(shí)現(xiàn)方法

    這篇文章主要介紹了pandas數(shù)據(jù)篩選和csv操作的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Python?numpy.transpose使用詳解

    Python?numpy.transpose使用詳解

    本文主要介紹了Python?numpy.transpose使用詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • 快速了解Python開發(fā)中的cookie及簡單代碼示例

    快速了解Python開發(fā)中的cookie及簡單代碼示例

    這篇文章主要介紹了快速了解Python開發(fā)中的cookie及簡單代碼示例,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-01-01

最新評(píng)論