No, hele, já ani moc nevím, co je widget nebo widget v django smyslu nebo 
widget v javascript smyslu.
Ale zkoušel jsem pár packages, které to prostě pomocí nastavení widget=... 
připojujou, což mi přijde docela elegantní. Např. se dá udělat 
formfield_overrides = {models.FileField: {'widget': XxxxxWidget}}
a mám to všude, a stejně snadno to zas můžu vyhodit nebo nahradit něčím 
jiným, jestli někdy něco přijatelnějšího bude.

Zatím laboruju s django-sticky-uploads, ale chtěl jsem vědět, jestli třeba 
něco podstatně lepšího nepřehlížím.

Co se týká funkce, potřebuju, aby se choval upload úplně stejně, jako 
ostatní inputy:
když do nich něco napíšeš a submitneš stránku s nevyplněným povinným 
údajem, tak to, cos tam napsal tam zůstane.
V případě uploadu to musí uživatel hledat znova po disku, což ho jistě 
potěší, když tam připíchnul třeba 3 soubory (nehledě na to, že jejich 
zmizení může přehlédnout).

Validace se provádí úplně standardně na serveru po submitu, na základě 
toho, jestli je pole definováno v modelu jako povinné.
Proprietárně si to fakt řešit nehodlám.




Dne středa 15. května 2019 12:52:54 UTC+2 JirkaV napsal(a):
>
> Asi necemu nerozumim, ale "aby prilozene soubory prezily submit + selhanou 
> validaci" prece neni otazkou widgetu, ne? To si musis zajistit ve formu 
> pripadne tam, kde validaci provadis.
>
> Co se tyka upload widgetu, jsem celkem spokojeny s 
> https://www.dropzonejs.com/ - ale je to pouze na strane JS, nemuzes to 
> napojit rovnou na FileField.
>
>   Jirka
>
> On Wed, 15 May 2019 at 12:39, MirekZv <mirek....@gmail.com <javascript:>> 
> wrote:
>
>> Musím vybrat nějaký upload widget pro py3/dj2, tedy něco, co připojím na 
>> FileField pomocí widget=...
>> Zatím jde o dokumenty, samozřejmě, kdyby to mělo i něco extra pro 
>> ImageField, nezlobil bych se.
>>
>> Ale zásadní požadavek je teď jediný: aby přiložené soubory přežily submit 
>> + selhanou validaci a uživatel je nemusel zadávat znova.
>>
>> Trochu jsem pokoukal a něco vyzkoušel, ale situace se mi zdá skoro 
>> tragická.
>> Třeba jsem něco přehlédl, nemáte pro mě nějaký tip?
>>
>> Díky, Mirek
>>
>> -- 
>> -- 
>> E-mailová skupina djan...@googlegroups.com <javascript:>
>> Správa: http://groups.google.cz/group/django-cs
>> --- 
>> Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny 
>> „django-cs“ ve Skupinách Google.
>> Chcete-li zrušit odběr skupiny a přestat dostávat e‑maily ze skupiny, 
>> zašlete e-mail na adresu djan...@googlegroups.com <javascript:>.
>> Chcete-li tuto diskusi zobrazit na webu, navštivte 
>> https://groups.google.com/d/msgid/django-cs/3857364e-d6bb-48af-9327-8fa070c70c2f%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/django-cs/3857364e-d6bb-48af-9327-8fa070c70c2f%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>> Další možnosti najdete na https://groups.google.com/d/optout.
>>
>

-- 
-- 
E-mailová skupina django-cs@googlegroups.com
Správa: http://groups.google.cz/group/django-cs
--- 
Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny django-cs 
ve Skupinách Google.
Chcete-li zrušit odběr skupiny a přestat dostávat e‑maily ze skupiny, zašlete 
e-mail na adresu django-cs+unsubscr...@googlegroups.com.
Chcete-li zobrazit tuto diskusi na webu, navštivte 
https://groups.google.com/d/msgid/django-cs/e18872cc-7d3d-4cc1-82c3-b8f09440cf92%40googlegroups.com.
Další možnosti najdete na adrese https://groups.google.com/d/optout.

Reply via email to