【发布时间】:2015-04-01 08:46:59
【问题描述】:
如何显示带有作者姓名的图书?
这是我的模型:
Book.php
public function authors()
{
return $this->belongsTo('App\Author');
}
作者.php
public function books()
{
return $this->hasMany('App\Book');
}
我的控制器:
BookController.php
use App\Author;
public function index()
{
foreach (Book::with('authors')->get() as $book)
{
echo $book->authors->name;
}
}
错误
试图获取非对象的属性
请帮忙看看可能是什么问题?
【问题讨论】:
-
虽然 eloquent 非常聪明,但我总是发现在关系中定义外键会使它们更可靠。顺便说一句,如果您使用
belongsTo(),您的图书模型中的authors()不应该是单数吗? -
感谢它在将其更改为单数后工作......很棒