Vhodný upload widget?

20 views
Skip to first unread message

MirekZv

unread,
May 15, 2019, 6:39:43 AM5/15/19
to django-cs
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

Jirka Vejrazka

unread,
May 15, 2019, 6:52:54 AM5/15/19
to django-cs
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

--
--
E-mailová skupina djan...@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+...@googlegroups.com.
Chcete-li tuto diskusi zobrazit na webu, navštivte https://groups.google.com/d/msgid/django-cs/3857364e-d6bb-48af-9327-8fa070c70c2f%40googlegroups.com.
Další možnosti najdete na https://groups.google.com/d/optout.

MirekZv

unread,
May 16, 2019, 3:45:05 AM5/16/19
to django-cs
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> 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
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.

Vláďa Macek

unread,
May 16, 2019, 3:54:05 AM5/16/19
to djan...@googlegroups.com
Třeba se netrefím, ale tohle mě nedávno zaujalo:

https://uppy.io/examples/dashboard/

Celej ten web se tomu projektu věnuje.

V.
> E-mailová skupina djan...@googlegroups.com <javascript:>
> Správa: http://groups.google.cz/group/django-cs
> <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:>.
> <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
> <https://groups.google.com/d/optout>.
>
> --
> --
> E-mailová skupina djan...@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+...@googlegroups.com
> <mailto:django-cs+...@googlegroups.com>.
> Chcete-li tuto diskusi zobrazit na webu, navštivte
> https://groups.google.com/d/msgid/django-cs/e18872cc-7d3d-4cc1-82c3-b8f09440cf92%40googlegroups.com
> <https://groups.google.com/d/msgid/django-cs/e18872cc-7d3d-4cc1-82c3-b8f09440cf92%40googlegroups.com?utm_medium=email&utm_source=footer>.
Reply all
Reply to author
Forward
0 new messages