From 2268d9c92f9ff386ab5473cee171f1f4c08cc331 Mon Sep 17 00:00:00 2001 From: jww <2241674656@qq.com> Date: Sun, 23 Jan 2022 11:41:52 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AF=86=E7=A0=81=E5=8A=A0=E5=AF=86=E6=96=B9?= =?UTF-8?q?=E6=B3=95=E6=94=B9=E5=86=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- applications/models/admin_user.py | 10 ++++++++-- applications/view/admin/user.py | 4 ++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/applications/models/admin_user.py b/applications/models/admin_user.py index e8e278f..d0151e4 100644 --- a/applications/models/admin_user.py +++ b/applications/models/admin_user.py @@ -18,8 +18,14 @@ class User(db.Model, UserMixin): update_at = db.Column(db.DateTime, default=datetime.datetime.now, onupdate=datetime.datetime.now, comment='创建时间') role = db.relationship('Role', secondary="admin_user_role", backref=db.backref('user'), lazy='dynamic') - def set_password(self, password): - self.password_hash = generate_password_hash(password) + @property + def password(self): + raise AttributeError('这个属性值只能设置') + + # 使用这个装饰器,对应属性操作 + @password.setter + def password(self, value): + self.password_hash = generate_password_hash(value) def validate_password(self, password): return check_password_hash(self.password_hash, password) diff --git a/applications/view/admin/user.py b/applications/view/admin/user.py index 925af09..77c27dd 100644 --- a/applications/view/admin/user.py +++ b/applications/view/admin/user.py @@ -71,7 +71,7 @@ def save(): if bool(User.query.filter_by(username=username).count()): return fail_api(msg="用户已经存在") user = User(username=username, realname=real_name) - user.set_password(password) + user.password = password db.session.add(user) roles = Role.query.filter(Role.id.in_(role_ids)).all() for r in roles: @@ -189,7 +189,7 @@ def edit_password_put(): is_right = user.validate_password(res_json.get("oldPassword")) if not is_right: return fail_api("旧密码错误") - user.set_password(res_json.get("newPassword")) + user.password = res_json.get("newPassword") db.session.add(user) db.session.commit() return success_api("更改成功") -- Gitee