make:request
توليد طلب نموذج للتحقّق make:request
make:request يولّد صنف طلب نموذج (Form Request) في app/Http/Requests، لنقل قواعد التحقّق من المدخلات خارج المتحكّم إلى صنف مستقلّ قابل لإعادة الاستخدام.
بدل كتابة قواعد $request->validate([...]) داخل كل تابع متحكّم، يفوّض الطلب النموذجي عملية التحقّق كاملة لصنف منفصل له تابعان أساسيان: rules() لقواعد التحقّق، وauthorize() لتحديد هل المستخدم مخوَّل لتنفيذ هذا الطلب أصلًا.
إذا فشل التحقّق يُعاد المستخدم تلقائيًا مع رسائل الخطأ قبل أن يصل المنطق داخل تابع المتحكّم إطلاقًا — لا حاجة لأي كود يدوي إضافي.
الصياغة
php artisan make:request NameRequest
📄 مثال
php artisan make:request StorePostRequest
# داخل app/Http/Requests/StorePostRequest.php
public function authorize(): bool
{
return true;
}
public function rules(): array
{
return [
'title' => 'required|max:255',
'body' => 'required',
];
}
# داخل المتحكّم — التحقّق يحصل تلقائيًا قبل تنفيذ هذا التابع
public function store(StorePostRequest $request)
{
Post::create($request->validated());
}💡 نصائح عملية
- $request->validated() يُرجع فقط الحقول التي مرّت بقواعد التحقّق — أأمن من $request->all()
⚠️ أخطاء شائعة
- ترك authorize() تُرجع false بالخطأ فيُرفض كل الطلبات بخطأ 403 غير مفهوم السبب
خصائص ذات صلة
🎓 تريد فهم الصورة الكاملة خطوة بخطوة؟ ابدأ من مسار LARAVEL الكامل بالعربي.