Laravel 5.2 Обновление файловой системы - PullRequest
0 голосов
/ 07 мая 2018

Я хочу обновить документ, используя исходный код ниже

public function update(Request $request, $id)
{
    $this->validate($request, [
       'name' => 'required',
    ]);

    $document = Document::find($id);
    $data = $request->all();

    if ($request->hasFile('document')) {
        $exist = Storage::disk('document')->exists($document->document);
        if (isset($document->document) && $exist) {
            $delete = Storage::disk('document')->delete($document->document);
        }

        $document = $request->file('document');
        $ext = $document->getClientOriginalExtension();

        if ($request->file('document')->isValid()) {
            $documentName = date('YmdHis') . ".$ext";
            $path = 'docs';
            $request->file('document')->move($path, $documentName);
            $data['document'] = $documentName;
        }
    }

    $document->update($data);

    Session::flash('flash_notification', 'Success updated.');
    return redirect('documents');
}

но когда я нажимаю кнопку обновления, в исходном коде возникает ошибка с BadMethodCallException в строке Macroable.php 74: Метод обновления не существует. Почему так случилось? что плохого в написании моего кода? спасибо

1 Ответ

0 голосов
/ 07 мая 2018

Вы не можете массово обновлять такие значения, а также ваша переменная $document перезаписывается при получении файла из запроса. Назовите это так,

Document::where('id',$id)->update($data);

Надеюсь, это поможет.

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