使用 Handlebars.js 發送帶有字母和正文的電子郵件

克勞德·拉拉

這是對我的 Rust 車把的初始化。沒有錯誤。

  let mut reg = Handlebars::new();
  let order_email_content = reg.render_template("src/emails/order_email.hbs", &serde_json::json!({"data" : email_order.body, "orderNumber": 3333, "amount": 555})).unwrap();

這是發送電子郵件的信件:

let host_email = Message::builder()
      .from(config.email.serverEmail.email.parse().unwrap())
      .to(config.email.recipient.parse().unwrap())
      .subject("Rust Order für FlyerandPrint")
      .multipart(
        MultiPart::alternative() // This is composed of two parts.
            .singlepart(
                SinglePart::builder()
                    .header(header::ContentType::TEXT_PLAIN)
                    .body(String::from("Hello from Lettre! A mailer library for Rust")), 
            )
            .singlepart(
                SinglePart::builder()
                    .header(header::ContentType::TEXT_HTML)
                    .body(order_email_content),
            ),
    )
    .unwrap();

這通過了,但收到的電子郵件僅包含路徑字符串。

我是 Rust 的新手。謝謝。

問題:我如何包含來自把手(order_email_content)的 html 以在lettre 的正文中使用它?

注意:打印 reg(handlebare 變量)給出:

Handlebars { templates: {}, helpers: ["if", "lt", "raw", "or", "len", "unless", "with", "log", "lookup", "lte", "ne", "and", "not", "gt", "eq", "gte", "each"], decorators: ["inline"], strict_mode: false, dev_mode: false }

但是打印 order_email_content 給出字符串 "src/emails/order_email.hbs"

JMB

查看把手文檔中的示例,這樣的事情應該可以工作:

let mut reg = Handlebars::new();
reg.register_template_file ("email", "src/emails/order_email.hbs").unwrap();
let order_email_content = reg.render ("email", &serde_json::json!({"data" : email_order.body, "orderNumber": 3333, "amount": 555})).unwrap();

或者:

let mut reg = Handlebars::new();
let order_email_content = reg.render_template (
   include_str!("src/emails/order_email.hbs"),
   &serde_json::json!({"data": email_order.body, "orderNumber": 3333, "amount": 555})).unwrap();

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我正在使用模板發送帶有谷歌表格的電子郵件

創建用戶後使用 next.js API 發送電子郵件 ERR_HTTP_HEADERS_SENT

使用Handlebars.js遍历基本的“ for”循环

使用HandleBars.js创建HTML表

使用handlebars.js循环对象的对象

使用Handlebars.js渲染本地模板

使用handlebars.js显示JSON数据

使用Node.js处理mongoDB的问题(使用Express和handlebars)

创建handlebars.js子菜单

如何在Handlebars.js块中使用和设置自定义变量?

使用 Node.js 和 express-handlebars 从 JSON 文件渲染 html

使用Node.js,Express和Handlebars在导航栏中显示MongoDB文档的字段值

如果没有Handlebars.js

如何使用現有的 Sendgrid 動態模板與 Jenkins 發送電子郵件

如何使用 Amazon SES 使用 reactjs 發送電子郵件

從 ASP.NET 使用 Outlook 2016 發送電子郵件

Laravel 密碼重置電子郵件未在 Heroku 上使用 gmail 發送

使用 Laravel 向多個收件人發送電子郵件

使用Handlebars和ExpressJS进行多种布局?

在Cytoscape.js中使用Express-Handlebars

使用 Handlebars.js 创建响应式网格结构

从<script>标记中使用Handlebars.js上下文

使用 handlebars.js 时出现奇怪的字符

在 Handlebars 中使用帶有按鈕的 Javascript 函數

實現忘記密碼功能,搜索,如果電子郵件存在,發送電子郵件 Node.JS 不按預期工作

檢索所有客戶的電子郵件地址條帶 node.js

有沒有一種方法可以使用 nodemailer 向不同的人發送不同的電子郵件?

Handlebars.js和Webpack-预编译模板

Ember.js:HtmlBars和Handlebars.compile命令