محسن
4 سال پیش توسط محسن مطرح شد
2 پاسخ

ایجاد paginate در خروجی api لاراول

سلام.من برای درخواست های api نیاز دارم تا تو paginate قسمت links موارد قبلی و بعدی حذف بشه...چطور میشه ویرایش کرد؟

"meta": {
        "current_page": 20,
        "from": 191,
        "last_page": 250,
        "links": [
            {//به عنوان مثال میخوام لینک زیر برنگرده
                "url": "http://localhost:8000/api/admin/requests/get-all?page=19",
                "label": "« قبلی",
                "active": false
            },
            {//میخوام از این لینک شروع بشه
                "url": "http://localhost:8000/api/admin/requests/get-all?page=1",
                "label": 1,
                "active": false
            },

ثبت پرسش جدید
رضا پارسیان
تخصص : توسعه دهنده Php , Laravel
@Rp76 4 سال پیش مطرح شد
0

سلام :D
سوالت رو درست متوجه نشدم ولی بذار کور کورانه جواب بدم شاید مشکلت حل شد.

برای اینکار باید از دیتابیس اطلاعات رو فراخوانی کنی مثل کد زیر :

        $numbers = AppAds::orderby("id", "desc")->where("user_id",Auth::user()->id)->paginate(25);

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

 if ($numbers->currentPage() > $numbers->lastPage()) {
            return redirect(route("ads.list") . "/?page=" . $numbers->lastPage());
        } else {
            return view(
                "ads.list",
                [
                    "total_page" => $numbers->lastPage(),
                    "current_page" => $numbers->currentPage(),
                    "numbers" => $numbers->items()
                ]
            );
        }

البته من اطلاعات رو به یک view ارسال کردم که قطعا میتونی خودت درست کنی این قضیه رو.
امیدوارم کارت رو راه بندازه.


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 4 سال پیش مطرح شد
0

اگر دقت کنی links داره آرایه ای از آبجکت ها رو بر میگردونه
حالا اگر به هر دلیلی قسمتی از اون داده رو نمی‌خواهی میتونی کل آرایه رو پیمایش کنی و

  • یا اون قسمت رو حذف کنی
  • یا قسمت های دیگه رو استفاده کنی

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام