You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Django Allauth发送的邮件中修改发件人显示名称?

如何在Django Allauth发送的邮件中修改发件人显示名称?

我之前也碰到过类似的问题,你刚才踩的坑其实是把SMTP认证用的账号和邮件的显示发件人搞混啦!

EMAIL_HOST_USER是用来给SMTP服务器做身份验证的,它必须是纯邮箱地址,不能附带显示名称,否则服务器会识别失败,直接导致SMTP连接崩溃。正确的做法是分开配置这两个参数:

  • 保持EMAIL_HOST_USER为纯邮箱地址:
    EMAIL_HOST_USER = 'support@example.com'
    
  • 在DEFAULT_FROM_EMAIL里设置带显示名称的完整发件人格式,直接用引号包裹即可,不用额外转义字符:
    DEFAULT_FROM_EMAIL = "Khaled from XYZ <support@example.com>"
    

另外,因为你用的是Django Allauth,它有专属的邮件发件人配置项ACCOUNT_EMAIL_FROM,如果你的项目里设置了这个参数,记得也要改成同样的格式——Allauth会优先使用这个配置来发送验证邮件:

ACCOUNT_EMAIL_FROM = "Khaled from XYZ <support@example.com>"

这样配置后,用户收到的邮件里发件人就会显示成「Khaled from XYZ」,实际发件邮箱还是support@example.com,既不会影响SMTP认证,又能达到你想要的显示效果。

备注:内容来源于stack exchange,提问作者Khaled Abdulazim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.16 10:39:33