I am trying to use $media->onDuplicateReplace();
in code:
public function update($id){
$user = User::find($id);
$user->name=request('name');
$user->email=request('email');
$user->password=request('password');
$user->description=request('description');
$user->country_id=request('country');
$user->state_id=request('state');
$user->city_id=request('city');
$user->works_at=request('works_at');
$user->studies_at=request('studies_at');
$uid = $id;
$img = Image::make(request('file'));
$img->resize(800, null, function ($constraint) {
$constraint->aspectRatio();
});
$img->crop(800,800);
$img->save('uploads/users/images/'.$uid.'.jpg');
$media = MediaUploader::import('uploads', 'users/images', $uid, 'jpg');
$media->onDuplicateReplace();
$user->attachMedia($media, 'image');
$user->update();
return redirect('/');
}
but i dont work for me, keeping sending the error:
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'uploads-users/images-1-jpg' for key 'media_disk_directory_filename_extension_unique' (SQL: insert into media (disk, directory, filename, extension, mime_type, aggregate_type, size, updated_at, created_at) values (uploads, users/images, 1, jpg, image/jpeg, image, 49344, 2017-12-24 10:10:07, 2017-12-24 10:10:07))
this thing dont work too:
'on_duplicate' => Plank\Mediable\MediaUploader::ON_DUPLICATE_REPLACE,
How can i just make media to replace the file if it already exist?