为了账号安全,请及时绑定邮箱和手机立即绑定

无法编辑数据库,Laravel

无法编辑数据库,Laravel

PHP
红颜莎娜 2023-08-11 16:46:18
我有一个带有文本字段和图像字段的编辑表单,用户可以根据需要编辑和上传新文本或图像。但如果用户不上传新图像,我只想将旧图像保留在数据库中。我的问题问题是,当我点击上传按钮时,我被重定向到文章页面,并且没有显示错误,但数据库尚未更新。任何帮助将不胜感激,因为我尝试了多种方法但没有成功。先感谢您。网页.phpRoute::get('/tests/edit/{id}', 'TestController@edit');Route::patch('/tests', 'TestController@update');测试控制器.phppublic function edit(Request $request){     $test = Test::findOrFail($request->id);    return view('test.edit', ['test' => $test]);}public function update(Request $request, Test $test){    $test->user_id = $request->user()->id;    $test->name = $request->name;    if($request->hasFile('image')) {        Storage::delete('public/image/' . $test->image); //Delete old image        $path = $request->file('image')->store('public/image');        $test->image = basename($path);    }        $test->update();    return redirect('/tests')}编辑.blade.php@extends('layouts.app')@section('content')<div>    <form action="/tests" method="post" enctype="multipart/form-data">        {{ csrf_field() }}        {{ method_field('patch') }}            name:<input type="text" name="name" value='{{ $test->name }}'><br>            image: <input type="file" name="image"><br>            <input type='submit' value='upload'>    </form></div>@endsection
查看完整描述

2 回答

?
肥皂起泡泡

TA贡献1829条经验 获得超6个赞

edit.blade.php 添加以下内容:

  <input type="hidden" name="id" value="{{ $test->id }}">

测试控制器.php

 use $test->save(); instead of $test->update();


查看完整回答
反对 回复 2023-08-11
?
青春有我

TA贡献1784条经验 获得超8个赞

我和你有同样的问题。我在一个使用 laravel 的订购网站上工作,你可以从 laravel 获取数据并将其显示给用户,他也可以从网站订购一些东西,数据库将被更新。但是,我也无法得到或更新数据库中的数据。我使用 wampserver、mysql,一旦我在 phpmyadmin 中切换到 MariaDB 而不是 mysql,问题就解决了:http://localhost/phpmyadmin/



查看完整回答
反对 回复 2023-08-11
  • 2 回答
  • 0 关注
  • 118 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信