Anon3363
@Anon3363

Как взять из базы данных Продукты которые пользовател добавил в Wishlist?

public function WishlistPage(){
		$my_id = Session::get('id');
		$wish = [];
		$product = [];
		$myWishlist = Wishlist::where("user_id",$my_id)->get('product_id');
		// dd($myWishlist);
		foreach($myWishlist as $item){
			$id = $item['product_id'];
			array_push($wish,$id);
			$productsW = Products::where('id','=',$item['product_id'])->get();
			return view('/wishlist')
			->with('myWish',$productsW)
			->with('photo');
		}


вот Продукти
5f0e0580c459a306380520.png

Вот Wishlist пользователей
5f0e05a9eb88a977643762.png
  • Вопрос задан
  • 91 просмотр
Пригласить эксперта
Ответы на вопрос 1
Sanasol
@Sanasol Куратор тега Laravel
нельзя просто так взять и загуглить ошибку
Для начала дойти до раздела документации про отношения наверное стоит.
https://laravel.com/docs/master/eloquent-relationships

А потом забыть навсегда что можно делать запросы в базу в цикле или по крайней мере до того момента когда вы точно знаете что это необходимо и во что выльется.

Еще можно поставить IDE и форматировать код. Увидеть что return в цикле тоже делается.

В общем тут неправильно всё, на уровне синтаксиса даже.

public function WishlistPage()
{
    $my_id = Auth::id();
    $myWishlist = Wishlist::with('product')->where("user_id",$my_id)->get();
    return view('/wishlist')
      ->with('wishes', $myWishlist)
      ->with('photo');
}


public function WishlistPage()
{
    $user = Auth::user();
    $myWishlist = $user->wishlist()->with('product')->get();
    return view('/wishlist')
      ->with('wishes', $myWishlist)
      ->with('photo');
}


public function WishlistPage()
{
    $user = Auth::user();
    $products = [];
    $myWishlist = $user->wishlist()->with('product')->get();
    foreach($myWishlist as $wish) {
        $products[] = $wish->product;
    }
    return view('/wishlist')
      ->with('products', $products)
      ->with('photo');
}


Много вариантов в общем, но все упираются в отношения так или иначе в нормальном варианте. Иначе нафиг тогда ORM, Model, Laravel и вот это всё.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы