Php 拉威尔7 | |试图获得财产';名称';非对象

Php 拉威尔7 | |试图获得财产';名称';非对象,php,eloquent,laravel-7,Php,Eloquent,Laravel 7,我试图从author表中获取名称,但此错误总是发生。我该怎么办 型号 应用程序\书籍 应用程序\作者 视图 作者/节目 更改视图中的代码,如下所示: ... $data->author->name ... 不要使用“id”更改视图中的代码,如下所示: ... $data->author->name ... 不要使用“id”这只是图书表的名称,而不是作者表中的名称。我解决了问题,谢谢您的帮助。它就像$data->author->name不需要使用IDA作为旁注,不建议在视图中执行任何繁重的

我试图从author表中获取名称,但此错误总是发生。我该怎么办

型号 应用程序\书籍

应用程序\作者

视图 作者/节目


更改视图中的代码,如下所示:

...
$data->author->name
...

不要使用“id”更改视图中的代码,如下所示:

...
$data->author->name
...

不要使用“id”

这只是图书表的名称,而不是作者表中的名称。我解决了问题,谢谢您的帮助。它就像
$data->author->name
不需要使用IDA作为旁注,不建议在视图中执行任何繁重的操作(例如数据库查询)。相反,在控制器或由控制器调用的单独库中执行这些操作,并将结果传递给视图<代码>{{$user->employee->emp_name}。我在我的模型和控制器中正确声明,这是我的查询
User::get()
,这只是图书表的名称,不是来自作者表我解决了问题谢谢你的帮助。它就像
$data->author->name
不需要使用IDA作为旁注,不建议在视图中执行任何繁重的操作(例如数据库查询)。相反,在控制器或由控制器调用的单独库中执行这些操作,并将结果传递给视图<代码>{{$user->employee->emp_name}。我在模型和控制器中正确声明,这是我的查询
User::get()
public function author()
    {
        return $this->hasOne('App\Author');
    }
public function book()
{
       return $this->belongsTo('App\Book');
}
   @php 
        $book = Book::with('author')->where('author_id',$author->id)->get();
   @endphp`
   @foreach ($book as $data)

       ...
          Author name : {{$data->author_id->name}}
       ...

   @endforeach