۵ دستور کاربردی لاراول Blade

بدون دیدگاه

ما می‌خواهیم به پنج دستور blade لاراول که شما می‌توانید برای ساده کردنقالب‌های خود استفاده کنید نگاهی بندازیم. اگر شما در این زمینه تازه‌کار هستید، ایننکات به شما کمک خواهند کرد تا ویژگی‌های عالی blade، موتور تمپلیت استفاده در لاراول را کشفکنید.

۱. چک کردن اینکه کاربر لاگین کرده یا نه

وقتی می خواهید چک کنین که آیا کاربر لاگین شده یا نه می توانید خالی بودن user را چک کنید:

@if(auth()->user())
// The user is authenticated.
@endif

با این حال لاراول دستوری برای این کار تدارک دیده که تا حدودی کار را راحت و واضح تر انجام می دهد:

@auth
// The user is authenticated.
@endauth

 

۲. چک کردن اینکه کاربر لاگین نکرده (مهمان) است یا نه

مورد بالا را بر عکس کنیم می خواهیم چک کنیم آیا کاربر مهمان است یا خیر . به طور معمول این کد را استفاده می کنیم:

@if(auth()->guest())
// The user is not authenticated.
@endif

ولی لاراول دستوری هم برای این کار آماده کرده است:

@guest
// The user is not authenticated.
@endguest

حتی می توانیم دو دستور بالا را به این شکل با هم ترکیب کنیم. یعنی اگر لاگین نبود  فلان کار را انجام بده والا اگر لاگین بود فلان کار دیگر را:

@guest
// The user is not authenticated.
@else
// The user is authenticated.
@endguest

 

۳. اگر View اول موجود بود آن را Include کن والا دومی را

گاهی اوقات نیاز است فایل blade را داخل فایل blade دیگر وارد (include) کنیم. مثلا وقتی سایت از چند قالب مختلف استفاده می کند. حالا باید چک کنیم اگر فایل اولی موجود بود آن را اینکلود کند والا برود سراغ گزینه دوم. روش معمولی به این شکل است :

@if(view()->exists('first-view-name'))
@include('first-view-name')
@else
@include('second-view-name')
@endif

ولی اینجا هم دستور خیلی کوتاه تر و واضح تری وجود دارد که همان کار را می کند:

@includeFirst(['first-view-name', 'second-view-name']);

 

در همین رابطه :   پلاگین Under Construction برای لاراول

۴.Include کردن یک View بر اساس شرط If

گاهی نیاز داریم یک View را فقط زمانی include کنیم که داده ی خاصی موجود باشد یا شرایط خاصی حاکم باشد والا نیازی به آن view نداریم. مثلا اگر کاربر لاگین بود اطلاعات کاربری اش را نشان دهیم والا نیاز نیست.

کدی که معمولا با دستور @if می نویسیم به این شکل است:

@if($post->hasComments())
@include('posts.comments')
@endif

ولی لاراول دستور @includeWhen را برایمان حاضر کرده است تا خیلی راحت تر به مقصود برسیم :

@includeWhen($post->hasComments(), 'posts.comments');

 

۵.Include کردن یک View وقتی موجود باشد

اگر سایت شما دارای قالب های سفارشی است یا به صورت داینامیک فایل های قالب ایجاد می شوند آنگاه قبل از نمایش باید از وجود داشتن آن view مطمئن شوید. روش معمول :

@if(view()->exists('view-name'))
@include('view-name')
@endif

و روش کوتاه تر :

@includeIf('view-name')

 

موارد بیشتر را می توانید در سایت رسمی لاراول دنبال کنید و قابلیت های کدنویسی تان را در محیط Blade بالاتر ببرید.

منبع

 

دسته بندی : Laravel

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

More in Laravel
چگونه عملگر “or” لاراول را با عملگر جدید PHP 7 جایگزین کنید؟

در نسخه بزرگ بعدی لاراول 5.7 ، عملگر or حذف خواهد شد. علت این کار که در این Pull Request...

Close