Как изменить значения запроса в laravel?

у меня есть следующий код

мой вопрос в том, как изменить значения запроса?

public function store(CategoryRequest $request)
{
    try {
        $request['slug'] = str_slug($request['name'], '_');
        if ($request->file('image')->isValid()) {
            $file = $request->file('image');
            $destinationPath = public_path('images/category_images');
            $fileName = str_random('16') . '.' . $file->getClientOriginalExtension();
            $request->image = $fileName;
            echo $request['image'];
            $file->move($destinationPath, $fileName);
            Category::create($request->all());
            return redirect('category');
        }
    } catch (FileException $exception) {
        throw $exception;
    }
}

а,

по каждому запросу выводится

echo $request['image'];

выводит некоторый текст, например /tmp / phpDPTsIn

2 ответов


можно использовать merge() метод


вы устанавливаете новое имя файла, используя

$request->image = ...

но тогда вы отступаете, используя доступный интерфейс массива Request класса.

попробуйте установить имя файла с помощью

$request['file'] = ...

или использовать merge() метод Request класса.