【问题标题】:Attempt to read property "Nombre" on bool尝试在 bool 上读取属性“Nombre”
【发布时间】:2021-05-07 00:26:32
【问题描述】:

我正在尝试使用 Laravel 8 制作一个显示视图,但我无法显示细节,这是来自控制器的代码:

public function show($id)
{
    $accesorios=DB::table('accesorio as acc')
    ->join('detalle_aparato as da','acc.idAccesorio','=','da.idAccesorio')
    ->select('acc.Nombre')
    ->where('da.idAparato','=',$id);
    return view("almacen.aparato.show",["accesorio"=>Accesorio::findOrFail($id)]);
}

这是视图中的代码:

@foreach ($accesorio as $acc)
<tr>
    <td>{{ $acc->Nombre}}</td>
</tr>
@endforeach

Error message

当我使用时:

@foreach ($accesorio as $acc)
<tr>
    <td>{{ $acc}}</td>
</tr>
@endforeach

打印:每条记录 1 个

希望你能帮助我

【问题讨论】:

  • 你在哪里设置$accesorio
  • 考虑编辑您的问题以将错误消息包含为文本而不是图像。可以搜索文本。

标签: php html eloquent laravel-8


【解决方案1】:

在您的控制器中,您使用DB::Table 设置$accesorios 变量,但从不使用它。

然后,您将视图中的 accesorio 设置为 Accesorio::findOrFail($id),这将只返回该对象的一个​​实例。

$accessorios 传递到您的视图中

return view("almacen.aparato.show",["accesorios"=>$accessorios]);

然后循环遍历它

@foreach ($accesorios as $acc)
<tr>
    <td>{{ $acc->Nombre}}</td>
</tr>
@endforeach

或者由于您只是将对象的一个​​实例发送到视图,删除循环,您可以像这样渲染它。

<tr>
    <td>{{ $accesorio->Nombre }}</td>
</tr>

【讨论】:

    猜你喜欢
    • 2021-05-02
    • 1970-01-01
    • 2021-09-14
    • 2021-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-11
    相关资源
    最近更新 更多