首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Laravel 9无法更新数据

Laravel 9无法更新数据
EN

Stack Overflow用户
提问于 2022-07-23 19:33:57
回答 1查看 603关注 0票数 0

控制器

代码语言:javascript
运行
复制
    public function update(Request $request)
    {
        DB::table('bahanbaku')->where('id', $request->id)->update([
            'id_bb' => $request->id_bb,
            'nama_bb' => $request->nama_bb,
            'stok' => $request->stok
        ]);

        dd($request);
        return redirect('/bahanbaku');
    }

抱歉,我的英语很差,但就我来说,

提交后,数据仍然相同,不改变。

你能帮帮我吗?T.T

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-07-23 20:54:26

Id不存在,这是非常基本的,但我觉得对Laravel有一些误解。为了了解基本情况,在Laravel中,我希望您执行以下操作。

  • 数据库操作使用模型
  • 与其在请求中传递id,不如将其传递给URL参数
  • 使用模型绑定获取模型。

创建您的模型,因为它有一个非标准的表名来定义它。在将属性更新为可填充属性时添加要填充的属性。

代码语言:javascript
运行
复制
use Illuminate\Database\Eloquent\Model;

class Bahanbaku extends Model {
   protected $table = 'bahanbaku';

    protected $fillables = [
        'id_bb',
        'nama_bb',
        'stok',
    ];
}

在您的路由中,将模型定义为参数。

代码语言:javascript
运行
复制
Route::put('bahanbaku/{bahanbaku}', [BahanbakuController::class, 'update']);

现在可以将逻辑简化为此,如果找不到模型并给出404错误,它将自动处理。

代码语言:javascript
运行
复制
public function update(Request $request, Bahanbaku $bahanbaku)
{
    $bahanbaku->fill(
        [
            'id_bb' => $request->id_bb,
            'nama_bb' => $request->nama_bb,
            'stok' => $request->stok
        ],
    );
    $bahanbaku->save();
    
    return redirect('/bahanbaku');
}

为了进一步改进,我将研究如何使用表格请求

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73093700

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档