From 4ef5b480b174c188086f3ccff73ac1658101a3f9 Mon Sep 17 00:00:00 2001 From: Patrick Jentsch <p.jentsch@uni-bielefeld.de> Date: Mon, 8 Jul 2019 13:55:56 +0200 Subject: [PATCH] Add reset token generation functionality in User class. --- app/models.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app/models.py b/app/models.py index d6bccb02..d7d33b85 100644 --- a/app/models.py +++ b/app/models.py @@ -1,4 +1,6 @@ +from flask import current_app from flask_login import UserMixin +from itsdangerous import TimedJSONWebSignatureSerializer as Serializer from werkzeug.security import generate_password_hash, check_password_hash from . import db from . import login_manager @@ -26,6 +28,10 @@ class User(UserMixin, db.Model): password_hash = db.Column(db.String(128)) + def generate_reset_token(self, expiration=3600): + s = Serializer(current_app.config['SECRET_KEY'], expiration) + return s.dumps({'reset': self.id}).decode('utf-8') + @property def password(self): raise AttributeError('password is not a readable attribute') -- GitLab