尝试获取 属性 的非对象 - 在 laravel 5.0 中检索数据集
Trying to get property of non-object - retrieve set of data in laravel 5.0
当我从两个 tables.This 获取数据时,我遇到了 laravel 的问题是我的查询。它存在于控制器中。
$switches = DB::table('sw_pairs')->
join('cust_sw_pair','cust_sw_pair.sw_pair_id', '=', 'sw_pairs.sw_pair_id')->
select(
DB::raw(
'cust_sw_pair.sw_pair_id,
count(cust_sw_pair.sw_pair_id) as totcount,
pri_sw, sec_sw,
count(if(pri_sw_admin_status="Admin Down" AND sec_sw_admin_status="Admin Down", 1, NULL)) as downCount')
)->
groupBy('cust_sw_pair.sw_pair_id')->get();
当我执行这个查询时,我得到了这个错误。
"Trying to get property of non-object"
但是当我使用 first()
而不是 get()
方法时,上面的查询成功返回了结果集的第一行。
这是视图上存在的检索部分:
@foreach($switches as $switch_pair)
<tr>
<td>{{$switches->pri_sw}} / {{$switches->sec_sw}}</td>
<td><span>{{$switches->downCount}},{{$switches->totcount}</span></td>
<td><i class="fa fa-level-up"></i> 40% </td>
<td>{{$switches->downCount}} / {{$switches->totcount}}</td></tr>
@endforeach
怎样才能顺利得到所有的结果?
您的代码有两个问题:
- a) 您正在循环
$switches
但没有使用循环中的单个项目
- b) 在第二个 td 中缺少荣誉
所以给你上面固定的结果:
@foreach($switches as $switch_pair)
<tr>
<td>{{ $switch_pair->pri_sw }} / {{ $switch_pair->sec_sw }}</td>
<td><span>{{ $switch_pair->downCount }},{{ $switch_pair->totcount }}</span></td>
<td><i class="fa fa-level-up"></i> 40% </td>
<td>{{ $switch_pair->downCount }} / {{ $switch_pair->totcount }}</td></tr>
@endforeach
当我从两个 tables.This 获取数据时,我遇到了 laravel 的问题是我的查询。它存在于控制器中。
$switches = DB::table('sw_pairs')->
join('cust_sw_pair','cust_sw_pair.sw_pair_id', '=', 'sw_pairs.sw_pair_id')->
select(
DB::raw(
'cust_sw_pair.sw_pair_id,
count(cust_sw_pair.sw_pair_id) as totcount,
pri_sw, sec_sw,
count(if(pri_sw_admin_status="Admin Down" AND sec_sw_admin_status="Admin Down", 1, NULL)) as downCount')
)->
groupBy('cust_sw_pair.sw_pair_id')->get();
当我执行这个查询时,我得到了这个错误。
"Trying to get property of non-object"
但是当我使用 first()
而不是 get()
方法时,上面的查询成功返回了结果集的第一行。
这是视图上存在的检索部分:
@foreach($switches as $switch_pair)
<tr>
<td>{{$switches->pri_sw}} / {{$switches->sec_sw}}</td>
<td><span>{{$switches->downCount}},{{$switches->totcount}</span></td>
<td><i class="fa fa-level-up"></i> 40% </td>
<td>{{$switches->downCount}} / {{$switches->totcount}}</td></tr>
@endforeach
怎样才能顺利得到所有的结果?
您的代码有两个问题:
- a) 您正在循环
$switches
但没有使用循环中的单个项目 - b) 在第二个 td 中缺少荣誉
所以给你上面固定的结果:
@foreach($switches as $switch_pair)
<tr>
<td>{{ $switch_pair->pri_sw }} / {{ $switch_pair->sec_sw }}</td>
<td><span>{{ $switch_pair->downCount }},{{ $switch_pair->totcount }}</span></td>
<td><i class="fa fa-level-up"></i> 40% </td>
<td>{{ $switch_pair->downCount }} / {{ $switch_pair->totcount }}</td></tr>
@endforeach