我试图在yii2中使用swiftmailer将图像嵌入到视图中,但它返回错误无法打开文件进行读取
这是我尝试过的 在模型中
public function sendAccountActivationEmail($user)
{
return Yii::$app->mailer->compose('signup', ['user' => $user,
'successimage' => Yii::getAlias("@web/uploads/siteimages/
emails/signup.png")]) //this is path to img
->setFrom([Yii::$app->params['supportEmail'] => Yii::$app->name . ' colors'])
->setTo($this->email)
->setSubject('Account activation for ' . Yii::$app->name)
->send();
}
在signup.php的视图文件中我有
<img src="<?= $message->embed($successimage); ?>">
我在哪里出错了,我检查了This link,但提供了附加未嵌入现有文件的图像的线索。在Yii2 documentation上,他们提供了上述方法,但无法正常工作
答案 0 :(得分:1)
您需要提供上传的完整路径而不是相对路径 因为那将被解释为相对于类文件 尝试打开您的附件Swift-mailer problem
您可以使用@webroot
来解决问题。
'successimage' => \Yii::getAlias("@webroot/uploads/siteimages/emails/signup.png")