Is there any way to access your parameters within a mail layout when using the Yii mailer class? I can access $model from the view but not the layout.
<?php
        $params = array(
           "model" => $model
        );
        $message = Yii::$app->mailer->compose([
            'html' => $view.'Html',
            'text' => $view,
        ], $params)
        ->setFrom("[email protected]")
        ->setTo($recipient)
        ->setSubject($subject);
?>
I know that for a standard web view you would set yii\web\View::$params to access variables in the layout but this doesn't appear to work for the mailer. 
Any ideas?
I just found out another way to set params to layout from controller :
// In your controler before send mail : 
Yii::$app->mailer->view->params['title'] = $title;
// In your layout
echo $this->params['title'];
Hope this help!
I'd do something similar to how you get breadcrumbs back to the view.
//In your view file, model was passed down via compose as you have it.
//this adds model element to the View object's params.
$this->params['model'] = $model; 
//In your layout
echo $this->params['model']->attribute;
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With