209 похожих чатов

Всем привет, хотел бы задать вопрос, пишу свое облачное хранилище,

которое уже умеет загружать на сервер файлы, но сейчас задумался, а как загружать таким образом папки? Папка это же набор файлов и мне получается нужно циклом проходиться по всем файлам папки и добавлять их на серв?

6 ответов

20 просмотров

Папка это путь, ссылка, ничего более. Поэтому загрузка возможно именно файлов. С папками нужно циклично обходить список выбранных файлов и понимать относительный путь, чтобы формировать такие же ссылки со своей стороны на сервере. Dropzone js насколько я помню имеет клиентское апи для загрузки целых директорий

Maxemga- Автор вопроса
Олег Линьков
Папка это путь, ссылка, ничего более. Поэтому загр...

Ну как я и думал, обходить циклом все файлы, записывая все в бд и загружать на серв

Maxemga
Ну как я и думал, обходить циклом все файлы, запис...

Да, но без клиентской помощи никак. Уровень вложенности не понять, поэтому я бы начал с клиента :)

Maxemga- Автор вопроса
Олег Линьков
Да, но без клиентской помощи никак. Уровень вложен...

Ладно бы тупо загружать файлы, но тут нужно у каждого файла смотреть уровень вложенности, у каждого файла получать родительскую папку, изменять ее в базе добавляя ребенка и так может быть куча файлов с кучей вложенности = миллион операций и как это будет вообще работать… ужас кароч меня ждёт )

Maxemga
Ладно бы тупо загружать файлы, но тут нужно у кажд...

Да не, это все легко получить сложность в том чтобы понять какой уровень нужен. Пример: Находимся в папке с полным путем /user/local/downloads/test/upload/photos/may22 Пользователь при этом находится в папке /user/local/downloads/test/upload/ и выбирает папку photos По логике пользователя должна на сервере появится только папка photos/*

Maxemga- Автор вопроса
Олег Линьков
Да не, это все легко получить сложность в том чтоб...

Это тоже хардовая проблема с которой буду разбираться, но еще одна проблема как я уже озвучил выше - проблема оптимизации На каждую итерацию файла, нужно сделать запрос в бд на получение родительского файла, затем запрос на его обновление, запрос на добавлении нового файла в бд, затем записать его уже на сервере при условии наличия 100-а файлов например Я вот пока думаю и не очень представляю как это можно реализовать

Похожие вопросы

Обсуждают сегодня

Карта сайта