آموزش Laravel

Form Requests در لاراول

آموزش استفاده از Form Request در لاراول

در این مقاله آموزش استفاده از Form Requests ها و کاربرد آنها در فریم ورک لاراول رو به همراه مثال یاد خواهیم گرفت.

اعتبار سنجی Form Requests در لاراول

اعتبار سنجی Form Requests در لاراول

در ابتدا تعریفی از فرم ریکوئست ها رو میگیم و بعد میریم سراغ مثال.

 

Form Requests چیست؟

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

خوب این حالا یعنی چی؟!

فرض کنید ما برای پردازش های “create” , “update” اعتبار سنجی هایی رو قبل از پردازش نهایی اعمال کردیم که مواردشون هم تکراریه، مثلا برای “create” گفتیم فیلد “title” خالی نباشد و این اعتبار سنجی رو هم برای حالت “update” تکرار کردیم.

برای اینکه تکرار اعتبارسنجی ها رو نداشته باشیم یا آنها رو کاهش بدیم از “Form Request” ها استفاده می کنیم. 

 

مثالی از کاربرد Form Request

کنترلر و متدهای “store”, “update” زیر رو که مربوط به درج و بروزرسانی رکورد هست رو در نظر بگیرید.

کاربرد Form Request

کاربرد Form Request

می بینید که اعتبار سنجی از طریق متد validate برای محتوای دریافتی از فرم اعمال شده، حالا ما می خوایم این اعتبار سنجی رو ببریم از طریق یک Form Request انجام بدیم، به چه شکل؟

 
1) ایجاد Form Request

وارد ترمینال میشم و دستور زیر رو می نویسم.

				
					php artisan make:request PostFormRequest
				
			

فایل های request در مسیر زیر قرار دارند:

app -> Http -> Requetss

 

وارد From Request ایجاد شده که در این مثال نامش “PostFormRequest” هست میشم و کدهای اون رو به شکل زیر تغییر میدم.

				
					<?php

namespace App\Http\Requests;

use Illuminate\Foundation\Http\FormRequest;

class PostFormRequest extends FormRequest
{

    public function authorize()
    {
        return true;
    }

    public function rules()
    {
       $rules = [
        'title' => 'required|max:255|unique:posts,title,' . $this->id,
        'excerpt' => 'required',
        'body' => 'required',
        'image' => ['mimes:jpg,png,jpeg', 'max:5048'],
        'min_to_read' => 'min:0|max:60'
       ];

       if(in_array($this->method(), ['POST'])) {
        $rules['image'] = ['required', 'mimes:jpg,png,jpeg', 'max:5048'];
       }

       return $rules;
    }
}

				
			
2) استفاده از Form Request

برای استفاده از اعتبار سنجی جدید که از طریق form Request ایجاد کردیم به کنترلر خودمم بر میگردم و کدینگ متدهای store , update رو به شکل زیر تغییر میدم.

sample of form request in laravel

sample of form request in laravel

 

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

 

جمع بندی

در این مقاله کوتاه سعی کردم نحوه اعتبارسنجی از طریق Form Request ها در لاراول رو به شکل ساده توضیح بدم. امیدوارم این مطلب براتون مفید واقع شده باشه.

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

 

مقاله های آموزشی طراحی و برنامه نویسی وب

سایت رسمی لاراول

کاربرد HTML

 jQuery

جاوا اسکریپت در 1 ساعت

کاربرد CSS

آموزش ReactJS

صفر تا صد PHP

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

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