validated()); // Handle the images foreach($images as $key) if ($x=$request->validated($key)) $validated->put($key,$x->storeAs('site/'.$site->site_id,$x->getClientOriginalName(),'public')); foreach ($site->details as $oo) if ($validated->has($oo->key)) { // Dont set the following keys to null if they are null if (in_array($oo->key,$images) && is_null($validated->get($oo->key))) continue; $oo->value = $validated->get($oo->key) ?: ''; $oo->save(); $validated->forget($oo->key); } // Left over values to be created. foreach ($validated as $k=>$v) { $oo = new SiteDetail; $oo->key = $k; $oo->value = $v ?: ''; $site->details()->save($oo); } return redirect() ->back() ->with('success','Settings saved'); } }