Сохранение статического содержимого в общую папку Laravel

У меня возникают проблемы с хранением изображений в «публичной» папке платформы Laravel (которую я считаю папкой со статическим содержимым? Пожалуйста, исправьте меня, если я ошибаюсь).

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

/ государственные / активы / изображения

И вот мое семя, которое должно сохранить мои изображения в эту папку:

<?php

use Illuminate\Database\Seeder;

class ProductsTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
DB::table('products')->truncate();

$faker = Faker\Factory::create();

$limit = 30;

for($i = 0; $i < $limit; $i++) {
DB::table('products')->insert([
'title'       => $faker->name,
'SKU'         => $faker->name,
'description' => $faker->text,
'created_at'  => $faker->dateTime,
'updated_at'  => $faker->dateTime,
'images'      => $faker->image(URL::to(Config::get('assets.images')) ,800, 600, [], [])
]);
}
}
}#

Конфигурационный файл assets.images:

<?php
return [
'images' => '/assets/images'
];

Когда я пытаюсь запустить seed для заполнения своей базы данных, я получаю следующую ошибку:

  [InvalidArgumentException]
Cannot write to directory "http://localhost:8931/assets/images"

Я не вижу, где я иду не так. Может ли кто-нибудь предложить какое-либо понимание?

0

Решение

Я не эксперт по Laravel, но выброшенное исключение выглядит так, как будто вы пытаетесь записать URL-адрес, а не путь к файлу на диске.

Может быть, вы хотите проверить, есть ли у владельца процесса, выполняющего скрипт php, доступ на запись в это место.

1

Другие решения

Измени свой вызов URL :: к с функцией помощника public_path () как это:

$faker->image(public_path(Config::get('assets.images')) ,800, 600, [], [])

2

По вопросам рекламы [email protected]