Как сохранить несколько изображений в hasmany красноречивой модели

У меня есть модели продуктов и изображений. Оба имеют столбец изображений. Продукт имеет родительское изображение, изображения имеют дочерние изображения.

Мой код обновления:

public function updateProduct(Request $request){
       $validatedData = $request->validate([  
            'image' => 'required',
        ]); 
        $image = Input::file('image'); 
        if (isset($image))
        { 
            foreach($request->image as $image){ 
                $directory = public_path().'/uploads/programs';
                if (!file_exists($directory)) File::makeDirectory($directory,0777, true, true);
                $filename  = sha1(time().time()).".png";    
                $filename  = $image->getClientOriginalName();
                $filename  = str_random(40)."$filename";
                $upload_success = $image->move($directory, $filename);
                $input['image'] = $filename;  
            } 
        }

Как я могу обновлять изображения в обоих одновременно?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
0
162
1

Ответы 1

public function updateProduct(Request $request)
{
    $this->validate($request, [ 
        'image' => 'required|array',
    ]); 
   $oProduct = Product::create([
    //insert data for product table
    )];

   $oProduct->images()->saveMany(collect($request->image)>map(function($image) 
  {
        return new Image([
            'image' => $image
        ]);
    }));

}

Here images() is hasMany relation with Product so that relationship access for 
this.

Другие вопросы по теме