在Blade中显示关系查询的字段

时间:2017-05-02 19:17:56

标签: laravel laravel-5 relationship laravel-blade

在模型中绑定表并编写查询后,Blade中的提取数据显示错误。

  

尝试获取非对象的属性

模型

<?php

public function unit()
{
    return $this->belongsTo('TEST\Units');
}

查询

$inst = Instructions::with('unit')
     ->where('id',$inst_id)
     ->first()
     ->get();

模型

@foreach ($inst as $item)
    <pre>{{$item->units->name}}</pre>
@endforeach

但是,使用此代码并删除名称或其他字段时,不会显示错误...

@foreach ($inst as $item)
    <pre>{{$item->units}}</pre>
@endforeach

输出:

{"id":1,"name":"UNIT 101","description":null,"created_at":"2017-03-06 13:30:18","updated_at":"2017-03-06 13:30:18"}

1 个答案:

答案 0 :(得分:0)

解决

            @foreach ($inst as $item)
                @if (!empty($item->unit->id))
                <pre>{{$item->unit->name}}</pre>
            @endif
        @endforeach