Files
DjangoAdmin_Flask_EleVue/extensions/mail.py
T
DjangoAdmin DevandClaude 15f2a5e097 chore: 基线提交(重构前代码快照)
- git 初始化 + .gitignore 补全(根 .env / logs / instance / __pycache__ 等)
- 修复 utils/.gitignore 误将整个 utils/ 源码层忽略的问题,补入全部工具源码(含 ip2region.xdb)
- 含后端全部代码:application / extensions / utils / config / migrations
- 含前端 ui/(后续整体迁走)
- 不含根 .env(含密钥,本地保留)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-07 12:12:06 +08:00

47 lines
1.2 KiB
Python

"""
Flask-Mail 扩展初始化模块
=============================================================
仅负责 Flask-Mail 扩展实例的创建与初始化。
"""
from flask import Flask
from flask_mail import Mail
# Flask-Mail 扩展实例
# 在应用工厂中通过 mail.init_app(app) 完成绑定
mail = Mail()
def init_mail(app: Flask):
"""
初始化 Flask-Mail 扩展,将 Mail 实例绑定到应用。
Args:
app: Flask 应用实例
Example:
# 在应用工厂函数中调用
init_mail(app)
"""
from config import (
MAIL_MAILER, MAIL_SERVER, MAIL_PORT, MAIL_USE_SSL,
MAIL_USERNAME, MAIL_PASSWORD, MAIL_ENCRYPTION,
MAIL_FROM_NAME, MAIL_FROM_ADDRESS,
)
app.config['MAIL_MAILER'] = MAIL_MAILER
app.config['MAIL_SERVER'] = MAIL_SERVER
app.config['MAIL_PORT'] = MAIL_PORT
app.config['MAIL_USE_SSL'] = MAIL_USE_SSL
app.config['MAIL_USERNAME'] = MAIL_USERNAME
app.config['MAIL_PASSWORD'] = MAIL_PASSWORD
app.config['MAIL_ENCRYPTION'] = MAIL_ENCRYPTION
app.config['MAIL_DEFAULT_SENDER'] = (
f'{MAIL_FROM_NAME} <{MAIL_FROM_ADDRESS}>' if MAIL_FROM_NAME and MAIL_FROM_ADDRESS
else MAIL_FROM_ADDRESS or None
)
mail.init_app(app)