Как я могу удалить образ с диска при удалении строки базы данных в laravel 6.9? - PullRequest
0 голосов
/ 20 января 2020

Я хочу удалить изображение, когда я удаляю строку с информацией о студенте

вот загруженный код, который я использовал. я также использовал интервенцию / пакет изображений для изменения размера

if (request()->has('image')) {
    $photo = request()->file('image');
    $image = Image::make($req->image)->resize(413, 513)->save(public_path('../../students/' . DB::getPdo()->lastInsertId().'png'));

    DB::table('students')
        ->where('id','=', DB::getPdo()->lastInsertId())
        ->update([
            'image'=> DB::getPdo()->lastInsertId().'.png',
        ]);
}

, и вот код удаления строки

public function destroyStudentProfile(Request $request)
{
    DB::table('students')
        ->where('id', '=', $request->std_id)
        ->delete();
    return redirect()->route('admin.student')->with('message', "The Profile of id=".$request->std_id." has been Delete !");
}

, теперь я хочу добавить строку для удаления изображения из моей папки. что теперь я могу сделать?

1 Ответ

0 голосов
/ 20 января 2020

У вас есть такие как красноречивые модели? Вы можете использовать Eloquent Events

model::deleted(function($model){

    // Write your code here to run on `deleted` event

}

События:

retrieved, creating, created, updating, updated, saving, saved, deleting, deleted, restoring, restored


Чтобы удалить файл с сервера, вы можете использовать

Storage::disk('your_disk')->delete(IMAGE_PATH);

или

unlink(IMAGE_PATH);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...