I have product and images models. Both have images column. Product has parent image, images have child images.
My update code is:
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;
}
}
How can I update images in both at a time?
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.