username
,email
和token
将被发送回后端
这样就可以验证电子邮件了。因此,请查看hex.pm源代码,了解它是如何完成的。
<!-- verification.html.eex -->
<%
verify_url = Routes.email_url(Endpoint, :verify, username: @username, email: @email, key: @key)
%>
Routes.email_url
。所以我通读了More on
Path Helpers,但仍然没有把它弄好。我想知道如何返回上述网址。
这就是我router.ex
中的内容。
get "/verify", UserController, :verify_email
还需要什么?有一件事似乎我需要在其中一个模块或控制器中设置它。
alias MyApp.Web.Router.Helpers, as: Routes
答案 0 :(得分:0)
我尝试过这种方式并且有效。但是我仍然不确定在哪里放置Route的别名,所以我只使用Router.Helpers。
<!-- router.ex -->
get "/verify", EmailController, :verify
<!-- verification.html.eex -->
<% verify_url = MyAppWeb.Router.Helpers.email_url(MyAppWeb.Endpoint, :verify, uuid: @uuid) %>
<!-- email_controller.ex -->
def verify(conn, %{"uuid" => uuid}) do
end