DB výsledek do session – Invalid argument passed to foreach
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- n.u.r.v.
- Člen | 485
Ahoj, do latte si vypisuji nějaká data a jelikož uživatel si může z toho vygenerovat PDF, tak tak jsem chtěl data ukládat do session, aby se již nemuseli znova načítat z DB a vypočítávat (je to dost sql náročnějších dotazů).
Původně jsem měl např. toto a to fungovalo:
public function render Result(){
$result = $this->nejakyRepo->getResult(); //zde je nacteni z DB (return $this->db->query(nejaky_query)->fetchAll())
$this->template->result = $result;
$this->resultSession->result = $result;
}
Ale toto nefunguje:
public function render Result(){
$this->resultSession->result = $this->nejakyRepo->getResult(); //zde je nacteni z DB (return fetchAll())
$this->template->result = $this->resultSession->result;
}
Dostanu při prvním načítání stránky chybu Invalid argument passed to foreach; array or Traversable expected
Když dám reload stránky, tak je již vše ok. Po zrušení session a opětovném načtení zase chyba…
Co dělám špatně? Děkuji