Salve a tutti, devo creare un endpoint (DRF) per permettere al client di caricare files su S3.
Ho capito che devo creare una policy per il client che allegera' al post per mandare il file su S3. Ho seguito questi due link per prendere spunto:
Documentazione AWS:
Esempio su django:
Io ho preso spunto, ma mi sto chiedendo se ha davvero senso avere una rappresentazione del file S3 nel database. Mi spiego meglio, potrei creare un model che rappresenta un file su S3 e che viene associato (GenericForeignKey) al Model che vuole gestire dei file (User, Document...). Il problema di questa soluzione e' che devo wrappare ogni cosa che viene fatta sul file. Rename, delete, upload... tutto deve passare con un update del database.
Mi chiedevo invece se non aveva piu' senso dare l'accesso al client ad una directory s3 che appartiene all'oggetto 'proprietario' dei files. Io come id uso un uuid e quindi potrei tranquillamente farlo, in questo modo se voglio sapere quali file ha il modello, mi basta solo accedere alla path data dall'id su s3. In questo modo mi tolgo persino il database dalle scatole.
Cosa ne pensate?
Ciao
--