Ho un'app Python-Flask in cui gli utenti possono inserire i file in una cartella. A partire da ora la struttura della directory è qualcosa del tipo:
/app
/storage
/templates
.
.
.
server.py
L'utente può creare directory e sottodirectory entro storage
per organizzare i file.
Finora sto facendo chiamate AJAX al server per ottenere dettagli sulle cartelle ecc. e compilare un elenco a discesa da cui gli utenti possono attraversare l'albero. Funziona, ma non sembra giusto. Quale altro approccio potrei prendere?
Il problema principale che spero di affrontare (e cosa sto facendo in questo momento):
C'è un ritardo tra quando l'utente seleziona una cartella quando viene mostrato il contenuto. Ovviamente non mi aspetto che sia veloce come aprire le directory su un file system locale, ma sarebbe bello migliorare UX lì.
Soluzione corrente: sto caricando informazioni sui contenuti di tutte le sottodirectory non appena viene selezionata una directory. Posso quindi mostrare il contenuto della sottodirectory non appena viene selezionato.
Supponiamo che la struttura della directory sia:
/foo
/bar
/sub
hello.py
world.py
/car
hello.c
world.c
Sto recuperando informazioni su file / sottodirectory in bar
e car
non appena viene aperto foo
. Ciò aiuta a mostrare i contenuti non appena viene selezionato bar
o car
.
Vantaggio: UX è buono
Svantaggio: trasferisce troppi dati non necessari dal server. E mentre sto effettivamente accedendo al disco per aprire ogni sottodirectory, questo potrebbe rallentare se sono presenti molte sottodirectory!
Inoltre, non sono sicuro di quanto sarà scalabile, se sarà mai necessario.