وقتی یک فرم ویرایش پروفایل داری، ممکن است کلاینت علاوه بر نام، فیلدی مثل
is_admin هم بفرستد. اگر ورودی خام را مستقیم به مدل بدهی، مرز میان دادههای مجاز و نامجاز مبهم میشود.در لاراول، برای چنین فرمهایی از
FormRequest استفاده کن و موقع ذخیره فقط خروجی validated() را بگیر. این متد فقط فیلدهایی را برمیگرداند که در قوانین اعتبارسنجی تعریف شدهاند؛ بنابراین فیلد اضافی درخواست وارد این آرایه نمیشود. 👇$data = $request->validated();
$user->update($data);
این نمونه فرض میکند
$request یک FormRequest است و در متد rules() آن فقط فیلدهای قابلویرایش، مثل name، تعریف شدهاند. برای امنیت بیشتر، تنظیمات fillable مدل را هم محدود نگه دار؛ اعتبارسنجی جای محافظت در برابر Mass Assignment را نمیگیرد.✨ دفعهی بعد که یک فرم ویرایش میسازی، مسیر داده از درخواست تا
update() را بررسی کن و این الگو را امتحان کن.📚 مستندات رسمی لاراول: دادههای اعتبارسنجیشده
🔖 #Laravel #PHP #لاراول #Laravel #FormRequest #Validation #MassAssignment
👤 Developix
💎 Channel: @DevelopixLaravel