فرض کنید وبلاگی ساختهایم که چیزی حدود سیصد پست دارد که باید در صفحهای نمایش داده شود، ولی هر صفحه، جای حداکثر ده نوشته دارد.
با لاراول و بی لاراول چه کنیم؟
به دنبال مطالبی که با عنوان «حالا چرا لاراول» نوشتم، امروز میخواهم از صفحهبندی بگویم.
اینجا یک وبلاگ آموزشی نیست و نوشتهها هم قرار نیست آموزشی باشند. صرفاً میخواهم دوستانم را به همه معرفی کنم.
باز هم تکرار میکنم:
لاراول، دنیایی است با ابزارهایی رنگ و وارنگ و اسمهای جذاب، که اغلب از قبل وجود داشتهاند و حیاتشان را مدیون لاراول نیستند، اما زیبایی در کنار هم بودنشان را چرا.
تمام شد. به همین راحتی (؟!) یک صفحهبندی خوب و بیمنت درست کردهایم.
گام اول، در کنترلر...
در انتهای همان دستوری که برای فراخوانی پستهای وبلاگ دادهایم، یک فلش میگذاریم و متدی به نام paginate را صدا میزنیم و به او میگوییم که گنجایش صفحهی ما چقدر است.
به این صورت:
$posts = Post::where('category','folan')->paginate(10) ;
مرحله دوم، هنگام نمایش...
در فایل view، پس از آن که ده پست وبلاگی که با متغیر posts$ به دستمان رسیده را هر جور دلمان خواست نمایش دادیم، شمارشگر خود را قرار میدهیم.
به این صورت:
{!! $posts->render() !!}
مرحله سومی وجود ندارد!
تمام شد و رفت.
لاراول یک شمارشگر باوقار و شیک بوتاسترپ، با تمام خصوصیاتی که برشمردیم را برایمان میسازد، لینکهای آن را میسازد و متغیرهای مورد نظر را به سمت سرور ارسال میکند و خودش هم آنجا حی و حاضر است و تجزیه و تحلیلشان میکند و متوجه میشود که اکنون در کدام صفحه قرار داریم و صفحهی مورد نظر را متمایز میسازد.
لاراول، حتی استایلهای مورد نظر را از پیش حاضر کرده و مادامی که نخواهیم تغییری در ظاهر آن دهیم، واقعاً هیچ کار دیگری نیست که لازم باشد انجام دهیم.
در اینجا اگر انتقادی به لاراول باشد، این است که دل یک برنامهنویس خسته، به همین کارهای سادهی بدون چالش خوش است که لاراول ترجیح میدهد خودش انجام بدهد!