Převod pole do JSON v latte
- quiced
- Člen | 85
Zdravím všechny,
potřeboval bych nasměrovat jak převést pole do JSON v latte nebo presenteru. Potřebuju totiž použít hodnoty pro zobrazení v grafu. Do šablony dostávám hodnoty z DB klasicky:
$this->template->keyword_positions = $this->checkerRepository->getPositionTable()->where(array('keyword_id', $id));
ale už nevím jak pole keyword_positions předělat na JSON a použít to jako pole do javascriptu.
Díky za každou radu.
- TOMeek
- Člen | 64
quiced napsal(a):
Zdravím všechny,
potřeboval bych nasměrovat jak převést pole do JSON v latte nebo presenteru. Potřebuju totiž použít hodnoty pro zobrazení v grafu. Do šablony dostávám hodnoty z DB klasicky:
$this->template->keyword_positions = $this->checkerRepository->getPositionTable()->where(array('keyword_id', $id));
ale už nevím jak pole keyword_positions předělat na JSON a použít to jako pole do javascriptu.
Díky za každou radu.
Myslíš něco jako
$this->template->keyword_positions = Nette\Utils\Json::encode($keyword_positions_array)
- petr.pavel
- Člen | 535
Ukaž šablonu, prosím. Mám za to, že by mělo stačit
<?php
$this->template->keyword_positions = $this->checkerRepository->getPositionTable()->where(array('keyword_id', $id))
?>
<script>
var positions = {$keyword_positions};
</script>
Jinými slovy – nepřevádět v presenteru a nechat escapování v Latte, ať to udělá za tebe.
Maximálně za ->where()
přidat
->fetchPairs()
/ ->fetchAssoc()
, ale nejdřív
to zkus bez nich.