laravel не показывать новое изображение после редактирования, только если удалить кеш - PullRequest
0 голосов
/ 27 февраля 2020

Когда я изменяю изображения, процесс редактирования завершается успешно, но в них не вносятся изменения, и новое изображение не появляется после редактирования, кроме случаев, когда я удаляю кэш

 $brands = Brands::findOrfail($id);


    $image = $request->file('image');

    if ($image && $image->isValid()) {
        $path = $image->storeAs('brands', basename($brands->image),'public');
        $brands->image = $path;
    }


    $brands->name = $request->input('name');
    $brands->description =$description;

     if ($brands->save()) {
        return redirect(route('admin.brands'))->with([
            'message' => sprintf(' The Brand: "%s" edit success !', $brands->name),
            'alert-type' => 'success'
        ]);
    } else {
        return redirect()->back()->with([
            'message' => sprintf(' The Brand : "%s" can not edit success !', $brands->name),
            'alert-type' => 'error'
        ])->withInput();
    }

1 Ответ

0 голосов
/ 27 февраля 2020

Это может быть вызвано тем, что изображения имеют одинаковые имена файлов, по умолчанию изображения часто сохраняются в кеше, поэтому если изображения имеют одинаковые имена файлов, браузер покажет старое из кэша.

Лучше изменить имя файла изображения при каждом сохранении или редактировании / обновлении, и используйте ha sh, чтобы не было повторяющихся имен файлов изображений.

Другая причина в том, что, возможно, вы не извлекаете данные после сохранения, так что изображение не обновляется Всегда не забывайте получать ответ от вашего запроса на подтверждение. Это либо ответ, который вызовет функцию для обновления sh данных, либо сами данные.

...