handleEdit a setDefaults() podľa akcie

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

Dobrý deň.

Mám presenter s viacerými akciami, ktoré zobrazujú rôzne formuláre. Vytvoril som si signál handleEdit() ktorým by som chcel obslúžiť naplnenie ktoréhokoľvek formulára údajmi z databázy.

Je správne použiť nasledujúci kód, alebo idem nesprávnou cestou? Ďakujem za akúkoľvek pripomienku.

public function handleEdit($id)
{
	$request = $this->request->getParameters();

	if($request['action'] == 'directions') {
	    $this->record = $this->directions->findAll()->get($id);

	    $this['directionForm']->setDefaults($this->record);
	    $this['directionForm']['submit']->caption = "Uložiť";
	} elseif($request['action'] == 'countries') {
	    $this->record = $this->countries->findAll()->get($id);

	    $this['countryForm']->setDefaults($this->record);
	    $this['countryForm']['submit']->caption = "Uložiť";
	}
}
David Matějka
Moderator | 6445
+
0
-

jdes nespravnou cestou

  1. pro editaci si udelej samostatnou akci
  2. tvuj presenter je moc velky, udelej si samostatny presenter pro countries, directions apod.
jurajvt
Člen | 18
+
0
-

Ďakujem za odpoveď.

Skúsim to teda rozbiť na viac presenterov.