Jak na posílání emailu formátovaného latte šablonou
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- kloban
- Člen | 123
Ahoj, snažím se podle https://doc.nette.org/cs/mail#… poslat email formátovaný latte šablonou. Problém mi dělá
->setHtmlBody($latte->renderToString('uctenka.latte', $cisloDodkladu));
Laděnka hlásí
Call to undefined method Nette\Latte\Engine::renderToString().
Prosím o jakékoliv nakopnutí. Díky.
- kloban
- Člen | 123
Ještě sem dám celou metodu
public function handleUctenkaNaEmail($cisloDodkladu)
{
$latte = new Latte\Engine;
$mail = new Message;
$mail->setFrom('odesilatel <email@neco.com>')
->addTo('email@neco.com')
->setSubject('Předmět: Účtenka číslo '.$cisloDodkladu)
->setHtmlBody($latte->renderToString('uctenka.latte', $cisloDodkladu));
$mailer = new SendmailMailer;
$mailer->send($mail);
$this->flashMessage("Účtenka odeslána na email.");
}
a ještě mám nahoře nastaveno toto:
namespace App\ObjednavaniModule\Presenters;
use Nette,
DateTime,
App\Model,
Nette\Utils\Html,
Nette\Mail\Message,
Nette\Mail\SendmailMailer,
Nette\Latte;
- kloban
- Člen | 123
Mám ještě trochu jiný problém a to, že mi to nemůže najít šablonu:
Missing template file 'uctenka.latte'.
Problém je zde:
$template = new Nette\Templating\FileTemplate('uctenka.latte');
Jak k ní mám správně zapsat cestu?
Presenter je zde: /app/ObjednavaniModule/presenters/ObjednavkaPresenter.php
a šablona zde: /app/ObjednavaniModule/templates/Objednavka/uctenka.latte