Нужно обратиться к content-length у заголовков, и загружать чанками iter_content(chunk_size=ххх) ну и собственно уже можно вычислять проценты, зная размер контента и размер чанка. Только хорошо бы заложиться, что content-length может и не быть.
План А. Установить гит на хостинге.
План Б. Дополнить локальный гит репозиторием на gitlab / bitbucket / github и заюзать предлогаемый ими CI, даже дераганья просто bash скрипта с rsync может хватить.
none получается тк слаг устанавливается до сохранения записи и self.id работает не ожидаемо, еще нет записи в базе и нет собственно ид. Воспользуйтесь сигналами
Когда ваше приложение готово к развёртыванию в продакшене, запуск команды npm run build создаст оптимизированную сборку вашего приложения в папке build.
про суть проблемы уже написали react - это не про серверную часть, для имитации серверной части могу посоветовать mockapi, посмотреть на next или просто создать проект с сервеной частью express.