Laravel Livewire - 查找表并返回数据

问题描述 投票:0回答:1

我已经建立了一个非常简单的项目,因为我想向 livewire 传递一个 id,它从具有该 ID 的表中返回一些数据。

我的基本页面包括

@livewire('ShowData',['id' => 4])

我设置了一个 Livewire 组件(ShowData),它是

public $id;
public function render()
{
    return view('livewire.show-data');
}

我可以看到ID已通过 OK

 <div class="text-center border-2 w-1/2 mx-auto bg-grey-200 my-4 px-4 py-4 rounded ">
    {{$id}}
</div>

4 出现。所以我的下一组是添加在显示页面的顶部

@php
    $fp =App\Models\FrontPanel::find($id);
@endphp

到目前为止一切顺利 - 我仍然得到数字 4。

但是当我用

替换显示 ID 时
{{$fp->name}}

我明白了

尝试读取 null 上的属性“name”

任何帮助表示赞赏! (表中有一个字段名称BTW)。

laravel laravel-livewire
1个回答
0
投票

我已经解决了。与可以在刀片文件上完成的组件不同,查找必须在渲染之前进行,因此在 FrontPanel.php 页面上我在渲染中添加了:

$frontPanel = FrontPanel::find($id);
return view('livewire.show-data', ['frontPanel' => $frontPanel]);

现在可以正常使用了。

© www.soinside.com 2019 - 2024. All rights reserved.