Flask 메일 유형 오류: 필수 위치 인수 1개 누락: Mail.send(msg)의 'message'

2262 단어 webdevflask
0

플라스크 메일을 통해 비밀번호 분실 메시지를 이메일로 보내려고 할 때 "TypeError: _MailMixin.send() missing 1 required positional argument: 'message'"오류가 발생합니다. 모델을 따라 티셔츠를 입고 있는 것 같은 느낌이 들지만 분명히 뭔가를 놓치고 있습니다.

관련 코드는 다음과 같습니다.

초기화.py

app.config['MAIL_SERVER']='smtp.mailtrap.io'
app.config['MAIL_PORT'] = 2525
app.config['MAIL_USERNAME'] = 'e1f8a312670b7d'
app.config['MAIL_PASSWORD'] = '7a56dfdd316300'
app.config['MAIL_USE_TLS'] = 참
app.config['MAIL_USE_SSL'] = 거짓
메일 = 메일(앱)
models.py

클래스 사용자(db.Model,UserMixin):
id = db.Column(db.Integer, primary_key=True)
이메일 = db.Column(db.String(150), 고유 = True)
비밀번호 = db.Column(db.String(150))
사용자 이름 = db.Column(db.String(150))
생년월일 = db.Column(db.Date)
성별_ID = db.열(db.정수)
createDate = db.Column(db.DateTime(시간대 = 참),기본값 = func.now())
토큰 = db.Column(db.String(32), nullable=False, 고유=False)
메모 = db.relationship('tbl_note')
views.py 코드가 mail.send(msg) 줄에서 실패했습니다.

request.method =="POST"인 경우:
사용자 = User.query.filter_by(이메일 = form.email.data).first()
사용자의 경우:
#새 토큰 생성
토큰 = str(uuid4()).replace('-','')
#db에서 사용자 토큰 업데이트
사용자.토큰 = 토큰
db.session.add(사용자)
db.session.commit()
링크 = 'http://' + getenv('도메인') + url_for(
'업데이트_비밀번호',
이메일=my_user.email, 토큰=token)
msg = Message('비밀번호 재설정 요청',
발신자=' [email protected] ',
수신자=[사용자.이메일])
msg.body = '비밀번호를 재설정하려면 following link을 방문하세요: ' + 링크 +
'. 이 요청을 하지 않은 경우 이 이메일을 무시하면 변경 사항이 적용되지 않습니다.'

        Mail.send(msg)
        flash('We have sent an email to change your password. [Please check](https://apkhobby.com/total-conquest-mod-apk/) your Spam folder if not found.', category = 'success')
        return redirect(url_for('auth.login'))

좋은 웹페이지 즐겨찾기