چک کردن ویوها در لاراول
ﺯﻣﺎﻥ ﻣﻄﺎﻟﻌﻪ: 2 دقیقه

چک کردن ویوها در لاراول

لاراول در هر ورژنی که بیرون میده ، معمولا چند تابع جدید به عنوان helper به سیستم خودش اضافه میکنه تا کار توسعه دهنده ها رو ساده تر کنه . در این پست سعی دارم ، نحوه چک کردن انیکه ، آیا یک View وجود داره یا نه رو به شما ، با استفاده از یکی از همین Helper ها آموزش بدم . 

قبل از اینکه بریم سراغ کد ، بزارید با مثال به شما توضیح بدم ، فرض کنید شما یه سری دسته بندی دارید برای مثال ویو دسته بندی موبایل با دسته بندی وسایل سرگرمی متفاوته و همینطور گاهی اوقات اگر یک ویو به یک دسته بندی خاص اختصاص ندادیم باید یک ویو پیش فرض براش لود بشه . خوب این کار به سادگی قابل انجامه ، اگر کد زیر رو به دقت بخونید ، میتونید متوجه روش کار مثال بالا بشین . 

class CategoryController extends Controller
{
    public function show($slug)
    {
        $category = Category::with('posts')->where('slug', $slug)->firstOrFail();

        if (view()->exists('category.custom.'.$category->slug)) {
           $view = 'category.custom.'.$category->slug;
       } else {
            $view = 'category.show';
       }

        return view($view, [
            'category' => $category,
        ]);
    }
}

خب در کدهای بالا چه اتفاقی افتاده ؟ یک کنترل به اسم CategoryController در اینجا داریم که یکسری اطلاعات رو با استفاده از مدل Category برای ما بر میگردونه خوب در قسمت بعد ما با استفاده از متد exists میایم چک میکنیم که آیا یک ویو خاص وجود داره یا خیر اگر وجود داشت داخل شرط اجرا میشه و اگر هم نداشت ویو پیشرفض اجرا میشه . به همین سادگی با استفاده از این تابع میتونید کارهای مختلفی مثل کار بالا رو انجام بدید . 

اگر سوالی در این رابطه داشتید در بخش نظرات سوال خودتون رو مطرح کنید امیدوارم این نکته سری مورد استفاده دوستان قرار بگیره .

چه امتیازی برای این مقاله میدهید؟

خیلی بد
بد
متوسط
خوب
عالی
در انتظار ثبت رای

/@hesammousavi
حسام موسوی
طراح و برنامه نویس

بیشتر از ۱۵ سال هست که در حال برنامه‌نویسی و انجام پروژه های مختلف هستم و ۱۰ سالی هست که آموزش برنامه‌نویسی به علاقمندان حوزه برنامه نویسی میدیم در همه این مدت الان عاشق کدزنی و چالش‌های پروژه‌های مختلفم. به تدریس علاقه خاصی دارم و دوست دارم دانشی که در این راه بدست آوردم را در اختیار دیگران هم قرار بدم. 

دیدگاه و پرسش

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

در حال دریافت نظرات از سرور، لطفا منتظر بمانید

در حال دریافت نظرات از سرور، لطفا منتظر بمانید