0

I have two tables image_rekap and rekaps how to update image and delete image.

Controller:

public function index(Request $request) {
    if($request->has('search')) {
        $data = rekap::where('customer', 'LIKE', '%' .$request->search. '%')->paginate(5);
    } else {
        $data = rekap::paginate(5);
    }
    return view('rekap')->with([
            'data' => $data,
    ]);
}
public function insert_rekap(Request $request){
    // dd($request->all());
    $data = $request->validate([
        'customer'=>'required',
        'vessel'=>'required',
        'scopejob'=>'required',
        'pergantian_sparepart'=>'required',
        'teknisi'=>'required',
        'tahun'=>'required',
        'keterangan'=>'required'
    ]);
    $new_data= rekap::create($data);
    if($request->has('images')){
        foreach($request->file('images')as $image){
            $imageName = $data['customer'].'-image-'.time().rand(1,1000).'.'.$image->extension();
            $image->move(public_path('data_images'),$imageName);
            Image_rekap::create([
                'rekap_id'=>$new_data->id,
                'image'=>$imageName
            ]);
        }
    }
    return redirect()->route('rekap')->with('success','Data Berhasil Ditambahkan');
}

public function images($id){
    $data = rekap::find($id);
    if(!$data) abort(404);
    $images = $data->images;
    return view ('image_rekap',compact('data','images'));
}
public function update_rekap(Request $request,$id){
    $data = rekap::find($id);
    $data->update($request->all());
    return redirect()->route('rekap')->with('success','Data Berhasil di Update');
}

public function delete_rekap($id){
    $data = rekap::find($id);
    $data->delete();
    return redirect()->route('rekap')->with('success','Data berhasil dihapus');
}

and I have 2 model classes:

Model rekap:

class rekap extends Model {
    use HasFactory;
    
    protected $guarded = [];

    public function images() {
        return $this->hasMany(Image_rekap::class);
    }
}

Model class image_rekap:

class Image_rekap extends Model
{
    use HasFactory;
    protected $guarded = [];
}
4
  • 1
    Do you want to delete a specific image or images for a specific rekap item? What do you mean by multiple tables? Your images are storing in only one table Commented Jun 9, 2022 at 5:36
  • i want to delete and update a spesific image, because in the html table I made one table @MuhammadShareyar Commented Jun 9, 2022 at 8:44
  • If you want to delete an image on an image update then you can just simply send that record id on your update request and on just update the record image path. Commented Jun 9, 2022 at 9:58
  • show the code how to update @MuhammadShareyar Commented Jun 10, 2022 at 2:34

0

Browse other questions tagged or ask your own question.