Jak převést ActiveRow na JSON řetězec

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Jija
Člen | 4
+
0
-

Zdravím,
začínám s Nette a zrovna jsem se setkal s problémem k němuž jsem nikde nenašel žádné řešení.
Jde o to, že potřebuju z databáze pomocí Nette\Database\Connection .fetch() přečíst řádek tabulky a převést ho do JSONu. Bohužel ActiveRow nelze převádět do JSONu, takže mi vrátí jen {}. Tabulka má opravdu hodně sloupců, takže ruční vytváření nového objektu také nepřipadá v úvahu. Poradíte mi nějaký trik, jak to obejít?

enumag
Člen | 2118
+
0
-

Pokud má tabulka „opravdu hodně sloupců“ tak je to velmi špatná tabulka.

Co metoda ActiveRow::toArray()? Z pole už JSON uděláš snadno.

Editoval enumag (24. 11. 2013 17:42)

Jija
Člen | 4
+
0
-

Této metody jsem si nevšiml. Moc děkuji. Nejprve jsem to vytvořil pomocí foreache přes všechny hodnoty z tabulky překopírované do nového objektu, takto je to ale poněkud elegantnější.
Nevím jestli je 22 přehnané. Jedná se o osobní údaje lidí, a nenapadá mě, jak osobní údaje rozdělit do více tabulek bez újmy na přehlednosti a použitelnosti. Snad mohu mít čisté svědomí.

enumag
Člen | 2118
+
0
-

Záleží co všechno v té tabulce je. Např. telefonní čísla, adresy a všechno čeho jeden člověk může mít více by teoreticky mělo být v jiné tabulce.