В проекте Laravel, где находится расположение по умолчанию для загружаемых файлов? - PullRequest
0 голосов
/ 09 декабря 2018

Если бы я должен был загрузить изображение или аудиофайл на свой сервер с помощью Ajax, где данные файла сохраняются по умолчанию без использования метода move?Он находится в папке Storage/framework/cache/data?

ОБНОВЛЕНИЕ

Чтобы уточнить, хочу ли я загрузить файл через ajax (скажем, аудиофайл)), а внутри функции контроллера, в которую поступает запрос, есть НЕТ КОДА В БЛОКЕ, ПРОСТО ПУСТО * куда отправляется этот загруженный файл?

пример функции:

public function processUploadedFile(Request $Request) {
 // blank block, no code to affect file
}

Ответы [ 3 ]

0 голосов
/ 09 декабря 2018

Публичный диск предназначен для файлов, которые будут общедоступными.По умолчанию публичный диск использует локальный драйвер и хранит эти файлы в хранилище / app / public.Чтобы сделать их доступными из Интернета, вы должны создать символическую ссылку из public / storage на storage / app / public .В соответствии с этим соглашением ваши общедоступные файлы будут храниться в одном каталоге, который может быть легко использован всеми пользователями при использовании систем развертывания с нулевым временем простоя, таких как Envoyer.

Чтобы создать символическую ссылку, вы можете использовать команду storage: link Artisan:

хранилище php artisan: ссылка

Конечно, после сохранения файла и создания символической ссылки вы можете создать URL-адрес для файлов с помощью помощника ресурса:

echo asset ('storage / file.txt');

Используйте помощник для загрузки файла

Проверьте здесь https://laravel.com/docs/5.4/filesystem#file-uploads

Пожалуйста mark / upvote, если это окажется полезным:)

0 голосов
/ 09 декабря 2018

Ну, это действительно зависит.Но, скорее всего, он будет храниться в папке storage.Если вашему пользователю потребуется доступ к загруженным файлам, вы должны сохранить файл в storage/app/public.Чтобы получить доступ к этой папке, выполните php artisan storage:link, которая создаст символическую ссылку, доступную из папки public.

Допустим, я хотел загрузить файл с именем переменной файла avatar.

$path = $request->file('avatar')->store('public/avatars');

Чтобы получить доступ к извлечению файла на стороне клиента, просто наберите asset('storage/avatars');

Ссылка: https://laravel.com/docs/5.7/filesystem

0 голосов
/ 09 декабря 2018

Вам нужно опубликовать код перемещения, который вы использовали.Итак, мы можем узнать о проблеме дальше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...