Formulář jako komponenta (setValue u fileUpload)

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

Ahoj Neťáci,

chtěl bych poprosit o radu. Používám formuláře jako komponenty. Řeším v aplikaci REST API, ktery služí pro ovládání komponent přes mobilní aplikaci. Všechny ostatní formuláře (komponenty) lze vždy nasetovat přes setValues a nasledně přes fireEvents submitnout. Nic méně, u formuláře, ketrý obsahuje fileUpload set value nejde (dle API se neda setovat naprimo, ale vytahuje si to z requestu sam). Nic méně, žádným způsobem se mi nepodařilo odeslat ten event tak, aby v onSubmit metodě byly ty fajly.

Nějaké nápady jak toto vyřešit?

Pavel Kravčík
Člen | 1196
+
0
-

Ahoj Feťáci,

pokud jsou to menší soubory, co base64?

nyccoss
Člen | 18
+
0
-

ja na rest presenteru mam pres $request->getHttpRequest()->getFile(‚file‘) kde ho chytnu a mam instanci FileUpload. Ale nedokazu ho nacpat do toho formulare jako value, abych ho pak mohl submitnout a probehla cela onSuccess metoda a zpracovani toho souboru.

Jedna se o obrazky a videa, takze rozhodne nejde o male soubory

Pavel Kravčík
Člen | 1196
+
0
-

To myslím bude problém. Při opakovaném odeslání formuláře se soubory ztrácejí, takže předpokládám, že setValue() tam nefunguje vůbec.

Milo to řešil nějak takhle, třeba by se to dalo upravit (https://gist.github.com/…89fdabfd2ad5). Případně budeš muset upravit ten formulář, aby se choval trošku jinak při plnění restem.