مشکل صفحه بندی در لاراول

من از صفحه بندی لاراول استفاده کردم و تو حالت عادی مشکلی نداره 

اما وقتی برای قسمت هایی که جستجو انجام میشه صفحه بندی کار نمیکنه و فقط صفحه اول رو نشون میده و صفحات بعدی رو ارور 404 میده 

کد من هم اینجوری هست :

 $shop=shop::findorfail($Request->shops);

        $id = $Request->id ;
        $name = $Request->name ;
        $category = $Request->categories;
        $list= $Request->list;
	if($shop->productshow == 1){
		if($category != null){
			if($list == 1){
			$products=product::
			orderby('id' , 'desc')
			->where( 'status', '>', '1')
			->where( 'name', 'like', "%".$name."%")
			->where('catpro_id', $category)
			->paginate(10);		
			return view('user.shops.result' , compact('products' ,'shop'));
			@endif
		@endif
	@endif
برچسب ها:
پرسیده شده در: 4 سال قبل
آمار بازدید: 942
saze20 (105)
1

سلام، برای پاسخ به این سوال باید چندتا نکته رو با هم بررسی کنیم:

۱) چرا شما از دستورهای endif در انتها استفاده کردید؟ این دستور فقط برای قالب های blade هست و نه کنترلرهای لاراول

۲) اگر می خوایید چندتا paginate توی یه صفحه داشته باشید می تونید با دستور زیر این کار رو انجام بدید:

$products = Product::where('status',  1)
                ->orderBy('created_at', 'desc')
                ->paginate(20, ['*'], 'products');
                
$comments= Comment::where('status',  1)
                ->orderBy('created_at', 'desc')
                ->paginate(20, ['*'], 'comments');

داخل کد بالا ما paginate رو برای مثلا محصولات انجام دادیم ولی توی همین کنترلر باز هم می تونیم paginate انجام بدیم و دلیل اون به خاطر علامت * هست که به paginate استفاده کردیم و اسمی که گذاشتیم (product). یعنی پارامترهای دوم و سوم تابع paginate کمک می کنه تا بتونیم چندین paginate همزمان داشته باشیم. امیدوارم مشکل تون برطرف شده باشه.

ارسال شده در: 4 سال قبل
pirniak (351)
بیش از ۱ سال عضویت در روکسو بیش از ۱ سال عضویت در روکسو دارای سوال با ۱۰ رأی دارای سوال با ۱۰ رأی ارسال کننده پاسخ با ۱۰ رای ارسال کننده پاسخ با ۱۰ رای دارای ۲۰۰ کارما دارای ۲۰۰ کارما
جهت ارسال پاسخ ابتدا عضو سایت شوید.