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

在 Laravel Livewire 中持久保存 Eloquent Builder 实例

在 Laravel Livewire 中持久保存 Eloquent Builder 实例

PHP
不负相思意 2024-01-19 17:27:20
有一个实例\Illuminate\Database\Eloquent\Builder我想在实例化时(在mount生命周期挂钩期间)保留下来,以便我可以使用它进行查询。问题是我无法将其设置为公共财产,因为它会抛出一个Livewire\Exceptions\PublicPropertyTypeNotAllowedException(如下所示)。我也无法将它保存在会话中,因为它是一个 PDO 实例,并且 PDO 实例无法序列化或反序列化。大家有什么想法吗?编辑:控制器:public function index() {    $tableQuery = User::query();    return view('table', compact('tableQuery'));    }表.blade.php:<livewire:table   :tableQuery=$tableQuery>应用\Http\Livewire\表:class Table extends Component{    private $tableQuery;        public function mount($tableQuery){        $this->tableQuery = $tableQuery;    }        public function render(){        return view('livewire.table');    }}
查看完整描述

1 回答

?
烙印99

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

你可以在里面使用模型livewire


class Table extends Component{

    public $tableQuery;

    

    public function mount(){

        $this->tableQuery =  User::query();;

     }

    

    public function render(){

        return view('livewire.table');

    }

}


查看完整回答
反对 回复 2024-01-19
  • 1 回答
  • 0 关注
  • 27 浏览

添加回答

举报

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