Laravel,first()vs loop

时间:2017-07-06 20:13:19

标签: laravel

我有一个可以先运行的对象(),但我不知道如何遍历它。

$types = $biz->types()->first();
echo $types->name; //works great and gives me the name

这很好但是如果我尝试的话:

    $types = $biz->types(); //returns a BelongsToMany object
    foreach($types as $type){
        echo $type->name; //doesn't enter the loop at all
    }

编辑:以下内容不起作用:

 $biz->types; //returns an empty collection

这个没有给我任何东西,循环不会启动。

我的问题:如何循环$类型而不仅仅是第一个?

PS:我想把重点放在循环上,所以我没有提到所有的细节。

1 个答案:

答案 0 :(得分:4)

您应该将其作为属性访问,这样您就可以访问模型集合。作为一种方法访问它会为您提供QueryBuilder

foreach($biz->types as $type) {
   ...
}