本地开发

自定义邮件模板

使用 config.toml 自定义本地邮件模板


您可以通过 config.toml 设置自定义本地开发使用的邮件模板。

配置模板

您需要为 content_path 参数提供一个指向 HTML 模板文件的相对 URL。例如:

1
2
3
[auth.email.template.invite]subject = "您被邀请加入 Acme 公司"content_path = "./supabase/templates/invite.html"

可用的邮件模板

Auth 模块提供以下可配置的邮件模板:

  • auth.email.template.invite (邀请模板)
  • auth.email.template.confirmation (确认模板)
  • auth.email.template.recovery (恢复模板)
  • auth.email.template.magic_link (魔法链接模板)
  • auth.email.template.email_change (邮箱变更模板)

模板变量

模板系统提供以下可用变量:

ConfirmationURL

包含确认 URL。例如,注册确认 URL 可能如下所示:

1
https://project-ref.supabase.co/auth/v1/verify?token={{ .TokenHash }}&type=email&redirect_to=https://example.com/path

使用示例

1
<p>点击此处确认:{{ .ConfirmationURL }}</p>

Token

包含一个6位一次性密码(OTP),可替代 ConfirmationURL 使用。

使用示例

1
<p>您的一次性密码是:{{ .Token }}</p>

TokenHash

包含 Token 的哈希版本,可用于在邮件模板中构建自定义确认链接。

使用示例

1
2
3
4
5
6
<p>点击以下链接确认用户:</p><p> <a href="{{ .SiteURL }}/auth/confirm?token_hash={{ .TokenHash }}&type=email" >确认邮箱</a ></p>

SiteURL

包含您应用程序的站点URL。可在项目的认证设置中配置此选项。

用法

1
<p>请访问 <a href="{{ .SiteURL }}">此处</a> 登录。</p>

Email

包含用户的电子邮件地址。

用法

1
<p>已向 {{ .Email }} 发送恢复请求。</p>

NewEmail

包含用户的新电子邮件地址。仅在email_change邮件模板中可用。

用法

1
<p>您正在请求将电子邮件地址更新为 {{ .NewEmail }}。</p>

部署邮件模板

以下设置适用于本地开发。要在本地应用更改,请停止并重新启动Supabase容器:

1
supabase stop && supabase start

对于由Supabase管理的托管项目,请将模板复制到Dashboard的邮件模板部分。