Flask 中 @property 和@password.setter 的運用


在models.py 文件中 User用戶表中

# 禁止讀取密碼
 @property def password(self): # 原理:讀取返回參數
        # return self.password_hash
        # 實際不可讀
        raise AttributeError('password 是不可讀屬性') # 設置密碼
 @password.setter def set_password(self, password): self.password_hash = generate_password_hash(password) # 驗證密碼是否正確
    def verify_password(self, password): return check_password_hash(self.password_hash, password)

@property 主要是讓password字段無法直接讀取

@password.setter  修改用戶的password 字段   (修改密碼)

修改密碼

在python Console  中

>>>from app.models import *
>>>users=User.query.all() >>>user1=users[0]   #找到你小修改的那個用戶對象
>>>user1.set_password='123456'    #要修改的密碼
>>>user1.verify_password('123456') #驗證一下看是否正確

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM