试图在laravel 5.5中获得非对象的属性

时间:2017-09-21 19:33:30

标签: php mysql laravel-5.5

我正在尝试向视图页面显示我的变量值,但它显示了尝试获取非对象属性的错误。请有人帮助我。 这是我的控制器 -

public function myAffiliates(Request $request) {
    if ($user_id = Sentinel::getUser()->id) {
        $affiliates = DB::table('affiliate_users')
          ->where('affiliate_users.user_id', $user_id)
          ->first();
    }
    //dd($affiliates);
    return view('dashboard.affiliates.show',['affiliates' => $affiliates]);
}

我写了这样的观点页面 -

@foreach ($affiliates as $affiliate)
    <ul>
        <li>First Upline - {{ $affiliate->first_upline_id }} Pts,</li>
        <li>Second Upline - {{ $affiliate->second_upline_id }} Pts,</li>
        <li>Third Upline - {{ $affiliate->third_upline_id }} Pts.</li>
    </ul>
@endforeach

2 个答案:

答案 0 :(得分:2)

如果你想获得单一记录..在控制器和你的视图中使用first(),你不需要使用foreach。 但是如果你想获得多个记录..在控制器和视图中使用get(),你必须使用foreach。

答案 1 :(得分:0)

你试图迭代对象的属性试试这个

<ul>
        <li>First Upline - {{ $affiliates->first_upline_id }} Pts,</li>
        <li>Second Upline - {{ $affiliates->second_upline_id }} Pts,</li>
        <li>Third Upline - {{ $affiliates->third_upline_id }} Pts.</li>
</ul>