почему выдается ошибка атрибута функции send_reset_email (user)? Error is (AttributeError: у объекта 'NoneType' нет атрибута 'get_reset_token')?
class User(db.Model,UserMixin):
id = db.Column(db.Integer,primary_key=True)
username = db.Column(db.String(20),unique=True,nullable=False)
email = db.Column(db.String(120),unique=True,nullable=False)
image_file = db.Column(db.String(20),nullable=False,default='default.jpg')
password = db.Column(db.String(60),nullable=False)
posts = db.relationship('Post',backref='author',lazy=True)
def get_reset_token(self,expires_sec=1800):
s= Serializer(app.config['SECRET_KEY'],expires_sec)
return s.dumps({'user_id': self.id}).decode('utf-8')`
def send_reset_email(user):
token = user.get_reset_token()
msg = Message('password reset request',sender ='noreply@demo.com',recipients=[user.email])
msg.body=f'''TO reset pasword visit following link:{url_for('reset_token',token=token,_external=True)} If you did not make this request simply
ignore this email '''
@app.route("/reset_password",methods=['GET', 'POST'])
def reset_request():
if current_user.is_authenticated:
return redirect(url_for('home'))
form =RequestResetForm()
if form.validate_on_submit:
user =User.query.filter_by(email=form.email.data).first()
send_reset_email(user)
flash('email has been sent with instruction to reset','info')
return redirect(url_for('login'))
return render_template('reset_request.html',title='request update',form=form)