首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在控制器中渲染邮件下的视图?

如何在控制器中渲染邮件下的视图?
EN

Stack Overflow用户
提问于 2019-08-12 20:13:10
回答 1查看 93关注 0票数 0

我想把最新的招标名单发给我的订户。视图位于公共/邮件/布局下,视图名为tenderlist.php,前端有控制器,名为SiteController,站点文件夹下有视图,名为tenderlist.php。这里的代码运行良好,并给出了投标列表,现在我想使用swiftmailer将投标发送给多个用户,因此,我将页面布局复制到tenderlist.php /layout文件夹。电子邮件配置正确,但我无法将投标列表发送给用户

如果tenderlist.php是纯html代码,也就是静态数据,那么它就可以很好地工作,并发送到电子邮件。

代码语言:javascript
复制
Yii::$app->mailer->compose(['html' => 'layouts/tenderlist'])

但是,如果招标列表查询来自数据库,它会给出错误:以下是tenderlist.php的视图代码

//查看邮件/布局下的tenderlist.php页面

代码语言:javascript
复制
<?php foreach ($etender as $post): ?>
<div class="panel panel-default">

      <a href="detail?id=<?=html::encode($post['id'])?> "> <?=html::encode($post['bidtitle'])?> </a>  </div> 
<?php endforeach; ?>

//在我的站点中控制器actionTenderlist()

代码语言:javascript
复制
return $this->render('@common/mail/layout/tenderlist', [
                                    'etender'=>$tenders,       ]);  

//当我运行此命令时,它显示错误

代码语言:javascript
复制
Undefined variable: etender
EN

回答 1

Stack Overflow用户

发布于 2019-08-13 09:02:46

首先,您需要做的是:高级Yii2应用程序、common/config/main-local.php

代码语言:javascript
复制
'components' => [
    //...
    'mailer' => [
       'viewPath' => '@common/mail',
    ],
    //...
]

您的发送邮件功能:

代码语言:javascript
复制
Yii::$app
        ->mailer
        ->compose(
            [
                'html' => 'template-html', //or any sub folder of yor template like "templates/orders/template-html" located in common/mail
                'text' => 'template-text',
            ],
            [
                //any vars like
                'user' => $this->user,
            ]
        )
        ->setFrom([Yii::$app->params['appEmail'] => Yii::$app->name])
        ->setTo($this->user->email)
        ->setSubject($title)
        ->send()

希望能有所帮助。

还确保在将数据传递到邮件模板之前访问数据(或检查数据是否存在)。如果出现任何错误,还要检查您的frontend/runtime/log/app.log

感谢穆罕默德·奥马尔·阿萨姆

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57461000

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档