我正在尝试为我的Phoenix / Elixir应用程序使用带有Bamboo(和Amazon SES)的Bamboo的html电子邮件模板发送电子邮件
我已经设法使用Bamboo的|> text_body(message)
方法成功发送电子邮件。但是,我现在现在希望能够发送一个HTML模板,而不仅仅是一个字符串,因此我正在尝试使用render
fn https://hexdocs.pm/bamboo/1.1.0/Bamboo.Phoenix.html#render/3,但遇到了以下错误:function MyApp.HtmlEmailView.render/2 is undefined (module MyApp.HtmlEmailView is not available)
。使用text_body
fn时,我的视图没有任何错误。
这是我的朋友:
def send_test_html_email(to_email_address, subject) do
new_email()
|> from("myemail@gmail.com")
|> to(to_email_address)
|> subject(subject)
|> render("email.html")
end
这是来自文档的示例fn:
def html_email do
new_email
|> render("html_email.html")
end
我看不出有什么区别,而且正如我之前提到的,fn的其余部分在text_body
作为最后一行而不是render
的情况下工作正常。
我的预期结果是该电子邮件将无错误发送。我的实际结果是function MyApp.HtmlEmailView.render/2 is undefined (module MyApp.HtmlEmailView is not available)
错误。
答案 0 :(得分:0)
感谢贾斯汀·伍德(Justin Wood)和米兰·贾里克(Milan Jaric)的评论。
我在模块顶部使用了use Bamboo.Phoenix, view: MyApp.HtmlEmailView
,但是由于view: MyApp.HtmlEmailView
需要为view: MyAppWeb.HtmlEmailView
,因此导致了错误。这样就解决了问题。谢谢您的帮助。