Я работаю над приложением django + реагировать. Я хотел бы сделать браузер управления файлами, как вы видите на Google Drive и Dropbox. Функциональные возможности будут состоять в том, что в нем перечислены файлы (имя файла, размер файла, дата), и пользователи смогут загружать, удалять и загружать файлы. Пользователи могут видеть только свои собственные файлы.
Однако я сталкиваюсь с некоторыми проблемами при поиске лучшего способа сделать это. Мне было интересно, если мне нужно сделать таблицу базы данных, которая содержит информацию обо всех файлах (их владельца, местоположение, имя файла, размер файла, дата). Затем я в своем приложении реакции создаю таблицу, отображающую эту информацию, с кнопками в каждой строке для удаления и загрузки файла.
Когда, например, нажав удалить файл, он затем удалит этот файл в базе данных, используя api. В моем приложении django я бы создал механизм (не уверен, должен ли это быть сигнал), который удаляет фактический файл, когда объект файла удаляется в базе данных.
У меня также есть трекер местоположения, который отслеживает текущую папку. Таким образом, если вы щелкнете по папке (я создаю функцию, которая проверяет расширение файла, и если ее нет, то это папка, по которой можно щелкать), она добавляет имя этой папки в трекер местоположения (путь).
При загрузке файла он просто получает текущее местоположение из трекера местоположений и загружает файл в это самое местоположение.
Серьезное препятствие, которое я не могу преодолеть при планировании проекта с использованием этот метод, как я бы отфильтровать, какие файлы, чтобы показать, когда. Если в моей базе данных все файлы указаны как пути, это будет большой беспорядок, который будет сложно отфильтровать, чтобы показать правильные файлы в правильных подкаталогах.
Причина, по которой я говорю Вы об этом плане, что с одной стороны, кажется, что это будет работать для меня. Но с другой стороны, это кажется плохим и неэффективным способом сделать это. Необходимость добавления виртуального представления всех файлов в мою базу данных кажется неэффективной, и, как если бы у меня было много пользователей или файлов, было бы много работы в моей базе данных.
Другой способ, которым я, возможно, думал, что это возможно без использования базы данных, - это вызов функций в моем приложении django с аргументами из моего реагирующего веб-интерфейса. Я понятия не имею, возможно ли это вообще.
Например, реагирование может вызвать функцию listFiles в приложении django, которая принимает аргумент путь , который приложение реагирует при отправке. вызывая функцию. Затем он отправляет список объектов (где каждый объект - это имя файла + размер и дата) обратно в интерфейс реакции. Но возможно ли это вообще? Могут ли функции из приложения django вызывать реакции и отправлять данные обратно?
Или, может быть, я просто ошибаюсь в этом проекте, и существует совершенно другое решение, которое могло бы создать нечто подобное? Спасибо за чтение этого длинного эссе, и я извиняюсь за мой плохой английский sh