码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2020-03-01 14:32:43      阅读:112      评论:0      收藏:0      [点我收藏+]

标签:hash   用户   div   import   tee   app   span   query   验证   

在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‘) #验证一下看是否正确

 

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

标签:hash   用户   div   import   tee   app   span   query   验证   

原文地址:https://www.cnblogs.com/dyd520/p/12389441.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!