You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel Livewire调用setPriority修改优先级后数据库未更新问题

问题核心

你只修改了Livewire组件公共属性$postSingle在内存中的属性值,没有执行Eloquent模型的持久化操作,因此变更不会同步到数据库。前端显示更新是因为Livewire的响应式渲染直接读取组件内存中的属性值,并没有重新查询数据库,刷新页面后数值就会恢复为数据库存储的原始值。

修复代码

修改setPriority方法,补充规则校验和持久化逻辑即可:

public function setPriority(Post $postSingle, $priority)
{
    $this->authorize('update', $postSingle);
    $this->postSingle->priority = $priority;
    // 校验你预先定义的priority规则,不需要可删除
    $this->validate();
    // 将变更保存到数据库
    $this->postSingle->save();
}

内容的提问来源于stack exchange,提问作者eskimo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.14 06:51:08