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

Django allauth socialaccount注册页邮箱字段的模板变量是什么?

Django Allauth 社交注册模板中预填充邮箱的变量
  • 正确的模板变量是 {{ form.email.value }}

原因说明

allauth 在处理社交账号注册流程时,会自动将从第三方平台获取到的邮箱值填充到注册表单的 email 字段中。因此不需要从 socialaccount 或未创建完成的用户对象中取值,直接访问表单字段的 value 属性即可拿到预填充的邮箱地址。

自定义输入框示例

替换原有的 {{ form.as_p }} 后,你可以这样写自定义邮箱输入框:

<div class="form-group">
  <input type="email" 
         name="email" 
         id="id_email" 
         value="{{ form.email.value|default:'' }}" 
         placeholder="请输入邮箱地址" 
         required>
</div>

为什么之前的尝试无效

  • {{ email }}:模板上下文并未传入这个单独的变量,所以无法获取值
  • socialaccount.get_social_account().user.get_email():此时社交账号还未与本地用户完成绑定,user 对象尚未创建,自然无法通过该方式获取邮箱

内容的提问来源于stack exchange,提问作者Andras Vincze-Nagy

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 17:22:05