2016-12-11 3 views
1

пытается встроить изображение в представление с использованием SwiftMailer в yii2, но она возвращает ошибку Невозможно открыть файл для чтенияНевозможно открыть файл для чтения в Yii2 быстрой почтовой программе

Это то, что я попробовал В модель

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, но о ffers ссылается на прикрепление изображения, не вставляющего существующий файл. На Yii2 documentation они обеспечивают выше метод, но он не работает

+0

Вы можете отображать одно и то же изображение в обычном режиме? –

ответ

1

Вы должны указать полный путь для отправок не относительный путь , потому что будет интерпретироваться как относительно файла класса, который пытается открыть ваше приложение Swift-mailer problem

Вы можете решить эту проблему, используя @webroot.

'successimage' => \Yii::getAlias("@webroot/uploads/siteimages/emails/signup.png") 
Смежные вопросы