سؤال

الوظيفة أدناه الحصول على معرف المستخدم والحصول على العناصر من قائمة مراقبة المستخدم.هل هناك طريقة أستطيع أن أضيف المنطق التالي إلى طريقة عرض?يحتوي السطر المعلق على وجهة النظر التي أحاول تمريرها إليها.

public function getWatchList() {

    $user = User::find(Auth::user()->id);
    $item = WatchList::where('user_id', '=', $user->id)->get();

     foreach ($item as $i) {
        $items = Catagory::where('id', '=', $i->item_id)->get();

            foreach ($items as $item) {
                echo $item->id;
            }
     }

    // return View::make('account.watchlist')
    //     ->with('items', $items);
}
هل كانت مفيدة؟

المحلول

// don't need that, unnecessary db call, twice..
// $user = User::find(Auth::user()->id);

// you can do this:
$categoriesIds = WatchList::where('user_id', '=', Auth::id())->lists('item_id');

// then
$categories = Category::whereIn('id', $categoriesIds)->get();

return View::make('account.watchlist')->with('categories', $categories);

عرض القالب (account/watchlist.blade.php):

@foreach ($categories as $category)
   {{ $category->id }}
@endforeach
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top