2015-01-10 3 views
3

swiftmailer 확장을 사용하여 메일을 보낼 수 있습니다. 또한 @ app/mail 폴더의보기 파일을 포함 할 수 있습니다.yii2 : 메일에서보기를 렌더링하는 방법

이제 내 모델보기에 데이터를 포함시킬 수 있는지 궁금합니다. 예를 들어 모델 City.php 및 관련보기가 view.php 또는 index.php (격자보기)로 표시됩니다. 어떻게 데이터를 포함 할 수 있습니까? view.php (단일 레코드) 또는 메일 본문의 index.php에있는 테이블 데이터로 렌더링됩니다.

요약하면 yii2로 렌더링 된 기본 데이터를 메일 본문의보기 또는 색인에 포함시키고 싶습니다.

Yii::$app->mailer->compose('medicine-request-entry/html',['medicine_request_entry'=>$form]) 

하지만 오류 정의되지 않은 변수를 얻고있다 : - Yii::$app->mailer->compose('viewName', ['variable' => $variable])

또 다른 예 - Yii::$app->mailer->compose('contact/html', ['contactForm' => $form])

나는 많은 성공없이이 같은 시도

안녕하세요, 내가 좋아하는이 예제를 보았다 형태. medicie_request_entry은보기 폴더에있는 폴더입니다 (@ app/views에는 없음)

하지만 가져올 수 없습니다. 예를 들어,/mail/subfolder에있는 내보기 이름이 report.php이고 내 하위 폴더/도시 폴더에 view.php와 index.php가있는 city 폴더가 있다고 가정 해 봅시다. 암호.

모든 의견을 크게 기뻐할 것입니다.

감사합니다.

Yii::$app->mailer->compose('@app/views/medicine-request-entry/view',['model'=>$model]) 

하지만 난 아직도하지 않았다, 사용하는 방법 : 나는 내가 좋아하는 내 컨트롤러에 코드를 수정 솔루션과 같은 어려움

을 가진 사람에 대한 답을 퍼팅을 발견

답변

8

확인 레이아웃 @app/mail 주어진 또는 HTML로 메일을 보낼 수 있습니다.

감사합니다.

+4

레이아웃을 사용하려면 'components'-> 'mailer'및 common/mail/layout 폴더의 'viewPath'=> '@ common/mail'을 config에 추가해야합니다. 두 파일 html.php와 text.php –

+0

그게 내게 많은 도움이 되었네. 대단히 감사합니다. 앤드리 야 멘코와 파완. – FosAvance