Django App с автоматической загрузкой файлов из локальной системы пользователя
Я хочу создать сайт, основанный на python и django в backend и bootstrap, css, jquery и javascript в frontend, функциональность будет такой, что пользователь будет указывать "Source_Path" из своей локальной системы независимо от используемой пользователем ОС, он будет загружать все файлы из этой папки в наш проект django!
Возможно ли это? Можем ли мы сделать эту автоматизацию.
Я пробовал использовать os
, это работает в моей локалке, но в производстве это не работает! Я развернул с помощью веб-сервера apache2.
Любое предложение может помочь!
То, о чем вы просите, похоже на систему синхронизации/резервного копирования файлов, подобную той, что предоставляет Microsoft/Apple/Drop-box.
Не зря же они запускаются нативно, а не в браузере.
Браузеры предназначены для защиты операционной системы пользователя от Интернета. Поэтому вам будет трудно получить доступ к пользовательским каталогам.
Когда вы запускаете Django локально, да, у вас будет доступ к ОС, потому что Django - это "сервер" и не предназначен для работы на клиентских машинах в производстве.
Когда вы развертываете его в производстве, django больше не находится на вашей машине, а на сервере, на который вы его развернули. Поэтому любой путь, который вы указываете в браузере в качестве клиента, не будет существовать на этом сервере, в отличие от того, когда вы запускали django локально (на той же машине).
Так что же вы можете сделать.
Ну, вы можете написать приложение Electron, которое работает как браузер & имеет повышенные разрешения на хост-машине, однако это означает, что вам придется заставить людей загрузить его, а не просто перейти по ссылке в браузере.
В любом случае я не вижу, как можно создать что-то, что делает то, что вы хотите, не заставляя пользователя загружать что-то с повышенными правами.
Это невозможно.
В вашем localhost, клиент и сервер одинаковы. Поэтому, получив путь (от клиента), вы можете получить доступ ко всей файловой системе (сервера).
Но в случае разного клиента-сервера это невозможно, так как у вас есть путь к файловой системе клиента, а не доступ к ней.
Вы также можете проверить это с помощью Ngrok, PC1 - создать сервер, PC2 - путь загрузки. Это приведет к неудаче