Nefunkční iterátor u formuláře

- _Martin_
 - Generous Backer | 679
 
Ahoj,
u formuláře je ošklivý bug, když jej budu iterovat (viz. kód), tak mi
vypisuje úplně jiné věci.
foreach($form as $name => $component) {
	Debug::dump($name);
	Debug::dump($component);
}
Iterování přes $form->components funguje správně.
Možná tedy nejde o bug???, ale v dokumentaci je toto iterování takto
uvedeno a osobně bych čekal, že tam být má – nebo se něco změnilo?

- David Grudl
 - Nette Core | 8285
 
FormContainer neimplementuje IteratorAggregate, takže iterování nad objektem je standardním iterováním nad jeho proměnnýma.
Přidat IteratorAggregate?

- Jakub Lédl
 - Člen | 55
 
Přidat IteratorAggregate?
Proč? Dělám teda hlavně v .NETu a C#, ale zdá se mi logicky nesmyslné iterovat nad formulářem, pokud chci získat jeho komponenty. Iterovat přímo nad jeho komponentami, to je mnohem lepší :-)

- _Martin_
 - Generous Backer | 679
 
Jakub Lédl napsal(a):
Přidat IteratorAggregate?
Proč? Dělám teda hlavně v .NETu a C#, ale zdá se mi logicky nesmyslné iterovat nad formulářem, pokud chci získat jeho komponenty. Iterovat přímo nad jeho komponentami, to je mnohem lepší :-)
Asi máš pravdu – také kvůli tomu, že lze iterovat nad
$form->components a $form->controls. Takže to
spíš opravit v dokumentaci.