试图获取非对象Laravel的属性“名称”

时间:2020-05-09 21:40:07

标签: php laravel

我在我的项目中需要一些帮助,我收到此错误“试图获取非对象的属性'Nom'”。 这是代码:

控制器:

public function rdv($Name,$ID)
{


     $name=doc::find($Name);
     $iden=doc::find($ID);

    return view ('/rendezvous',['go'=>[$name]]) ;

}

这是集合的视图:

  <title> RDV chez {{$go->Name}}</title>

谢谢您的帮助?我需要在标题中显示姓名

3 个答案:

答案 0 :(得分:1)

您正试图访问像对象这样的数组。使用$go->Name代替$go[0]。但这只是一种解决方法。

实际的解决方案是像这样将变量发送到视图:

return view ('/rendezvous',['go'=> ['Name' => $name]]);

然后在您看来:

<title> RDV chez {{$go['Name']}}</title>

答案 1 :(得分:1)

尝试使用find()来获取正在处理的主键,该主键很可能是ID

public function rdv($Name,$ID)
{
     $name=doc::find($ID);

    return view ('/rendezvous',['go' => $name]);
}

并在您看来

<title> RDV chez {{$go->name}}</title>

我希望这会有所帮助

答案 2 :(得分:0)

Retrieving Single Models

未找到异常

有时候,如果找不到模型,您可能希望抛出异常。这在路由或控制器中特别有用。 findOrFail方法将检索查询的第一个结果;但是,如果未找到结果,将抛出Illuminate\Database\Eloquent\ModelNotFoundException

因此,在变量$ID中,您将需要具有数据库中现有模型的id的值。然后,您可以:

public function rdv($Name,$ID)
{
    $model = doc::findOrFail($ID);

    return view ('rendezvous', ['go' => $model]);
}

然后在rendezvous视图中,您可以访问模型属性,例如idname

<small>The model ID is: {{ $go->id }}</small>
<title>RDV chez {{ $go->name }}</title>