تفاوت find باfindOrFail

- 1 هفته پیش
توسط 1masoud آپدیت شد
1masoud ( 14880 تجربه )
1 هفته پیش
تخصص : php,laravel

@ali.bayat
@Alimotreb
تفاوت find باfindOrFail در چیست؟

علی بیات ( 193487 تجربه )
1 هفته پیش
تخصص : توسعه دهنده ارشد وب

درود
تصور کنید ما یه مدل User داریم که درش یه رابطه یک به یک یا یک به چند پیاده سازی شده. مثلا

$user->posts()

اگر از find استفاده کنیم و مقدار برگشتی به هر دلیلی null باشه.. در گرفتن مقدار رابطه به PHP error زیر بر‌میخوریم

PHP Error:  Call to a member function get() on null 

اما findOrFail چنانچه نتونه مقداری پیدا کنه در همون ابتدا ModelNotFoundException برگشت داده میشه.


و در PHP براحتی میشه Exception هارو مدیریت کرد.

mahdi khanzadi ( 50377 تجربه )
1 هفته پیش
تخصص : برنامه نویس سمت سرور

دستور findOrFail در صورتی که چیزی پیدا نکنه کاربر رو به صفحه ۴۰۴ میبره.
دستور find در صورتی که چیزی پیدا نکنه null برمیگردونه و باید خودتون مدیریت کنید همه چیزو.

1masoud ( 14880 تجربه )
1 هفته پیش
تخصص : php,laravel

@ali.bayat
کار این چیست منورم آرگومان دوم چیکار میکنه

$user = App\User::find(1, ['name', 'age']);
برای ارسال پاسخ باید وارد سایت شوید