使用 Summernote 在 Laravel 中动态内联附件
Posted
技术标签:
【中文标题】使用 Summernote 在 Laravel 中动态内联附件【英文标题】:Dynamic Inline Attachments in Laravel using Summernote 【发布时间】:2019-04-19 16:21:36 【问题描述】:我创建了一些功能来管理电子邮件活动。我使用summernote编辑电子邮件模板。
与大多数编辑器一样,Summernote 将图像存储为 base64 编码的图像标签。
我遇到的问题是,当我想发送电子邮件时,大多数邮件客户端都不会呈现 base64 图像标签。因此我需要使用:
<img src=" $message->embed($pathToFile) "> or <img src=" $message->embedData($data, $name) ">
根据 Laravel 文档:https://laravel.com/docs/5.7/mail#inline-attachments
问题是邮件类需要设置视图
return $this->from('example@example.com')->view('emails.orders.shipped');
将summernote 中的内嵌图像导入电子邮件视图的最佳方法是什么? (注意邮件可以包含多张图片,每个模板都不一样)
当前的邮件功能基本上希望您的视图中已经有嵌入功能。但是在这种情况下,我需要动态设置它。
【问题讨论】:
【参考方案1】:我唯一需要做的就是隔离 Summernote 值(从 textarea 中保存的数据)中的图像,并将它们重新创建为磁盘上的图像。然后使用已经写入动态视图的图像路径 (embed($pathToFile) "> 动态生成视图。然后将该动态视图注入到电子邮件中。
【讨论】:
以上是关于使用 Summernote 在 Laravel 中动态内联附件的主要内容,如果未能解决你的问题,请参考以下文章
laravel-mix-purgecss 和 Summernote
Summernote(数据未保存在数据库中)(laravel 5.2)
Summernote 编辑器未打开(laravel 5.2)