Formulář pro uložení i editaci s validátorem duplicity

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

Zdravím,
Mám v aplikaci formulář vytvořený obdobně jako je zde a ve formuláři ověřuji jedinečnost názvu pomocí callback.
Vzhledem k tomu, že mi pak nešel editovat záznam a ponechat původní název, testuji v callbacku id přes:

$id = $this->request->getParameters();

Chtěl bych se zeptat zda je tento přístup správný, nebo existuje nějaké lepší řešení?
Díky

Oli
Člen | 1215
+
0
-

U vytváření to asi jde pomocí callbacku kontrolovat. Pri editaci bych to ale vypnul a kontroloval to az po odeslání a pripadne vratil

$form->addError('duplicitní název');

Jeste by slo kontrolovat duplicitu v zavislosti na id v callbacku. Aktualne editovane id by se do kontroly nezahrnulo. To me ale prijde zbytecne krkolomny.

Ages
Člen | 128
+
0
-

To bych ale musel udělat druhý formulář pro editaci, callback je vlastní validační pravidlo, nebo ne?
Dokaži zjistit ve fpruláři zda je pro editaci, nebo pro uložení a přidat podmínku?

Oli
Člen | 1215
+
0
-

Jiste. Staci jeden formular pro addi edit. Nejjedonuseji to poznáš podle existence id

akadlec
Člen | 1326
+
0
-

Podle toho jak máš definovaný form (jeho vytvoření) ale předpokládám že si tam někde načteš z IDčka editovaný záznam tak stačí pak dělat kontrolu zda tento záznam se načetl a pokud ano tak zda je jeho název identicky s tím co se odeslal formulářem a pokud není tak provést kontrolu na jedinečnost.

Jan Suchánek
Člen | 404
+
0
-

Není jednoduší nechat tohle na databazi a odchytávat výjimky?

Ages
Člen | 128
+
0
-

Ok, předělám do této podoby.
Všem díky za rady :)