Web Development Custom Validation Rules তৈরি করা গাইড ও নোট

249

MVC ফ্রেমওয়ার্ক-এ Custom Validation Rules তৈরি করা একটি শক্তিশালী প্রক্রিয়া, যা ডেভেলপারদের নিজেদের নির্দিষ্ট প্রয়োজনীয়তা অনুযায়ী ডেটা ভ্যালিডেশন তৈরি করতে সহায়তা করে। সাধারণভাবে, এমভিসি ফ্রেমওয়ার্কে ডেটা ভ্যালিডেশন অনেক সময় বিল্ট-ইন রুলস ব্যবহার করে, যেমন required, email, minLength ইত্যাদি। তবে, কখনও কখনও প্রয়োজন হয় কাস্টম ভ্যালিডেশন রুল তৈরি করার, যা অ্যাপ্লিকেশনের নির্দিষ্ট লজিক বা ব্যবসায়িক চাহিদা পূরণ করতে পারে।

Custom Validation Rules কী?


Custom Validation Rules হলো সেই ভ্যালিডেশন রুলস যা ডেভেলপাররা নিজে তৈরি করেন, যাতে নির্দিষ্ট ডেটা চেক করার জন্য ব্যবহার করা যায়। এই রুলস সাধারণত ইউজারের ইনপুট যাচাই করার জন্য ব্যবহৃত হয়, যাতে সঠিক ডেটা মডেলে প্রবাহিত হয় এবং অপব্যবহার বা ত্রুটিপূর্ণ ডেটা এড়ানো যায়।

Custom Validation Rule তৈরি করার প্রক্রিয়া


এমভিসি ফ্রেমওয়ার্কের মধ্যে কাস্টম ভ্যালিডেশন রুল তৈরি করার পদ্ধতি বিভিন্ন ফ্রেমওয়ার্ক অনুযায়ী কিছুটা আলাদা হতে পারে। নিচে Laravel এবং ASP.NET MVC ফ্রেমওয়ার্কে কাস্টম ভ্যালিডেশন রুল তৈরি করার উদাহরণ দেওয়া হলো।


১. Laravel এ Custom Validation Rule তৈরি করা


Laravel ফ্রেমওয়ার্কে কাস্টম ভ্যালিডেশন রুল তৈরি করা সহজ। Laravel-এর Validator ক্লাসের মাধ্যমে আপনি কাস্টম রুল তৈরি করতে পারেন। নিচে কিভাবে কাস্টম রুল তৈরি করা হয় তা দেখানো হলো:

Step 1: কাস্টম ভ্যালিডেশন রুল তৈরি করুন

// app/Rules/Uppercase.php

namespace App\Rules;

use Illuminate\Contracts\Validation\Rule;

class Uppercase implements Rule
{
    public function passes($attribute, $value)
    {
        return strtoupper($value) === $value;
    }

    public function message()
    {
        return 'The :attribute must be in uppercase.';
    }
}

এখানে, Uppercase রুলটি চেক করবে যে ইনপুট ডেটা সব uppercase (বড় হাতের অক্ষরে) আছে কি না।

Step 2: কাস্টম রুল ব্যবহার করা

use App\Rules\Uppercase;

$request->validate([
    'name' => ['required', new Uppercase],
]);

এখানে, name ফিল্ডটি যদি uppercase না হয়, তাহলে কাস্টম বার্তা (The name must be in uppercase.) দেখানো হবে।


২. ASP.NET MVC এ Custom Validation Rule তৈরি করা


ASP.NET MVC ফ্রেমওয়ার্কে কাস্টম ভ্যালিডেশন রুল তৈরি করতে ValidationAttribute ক্লাস ব্যবহার করা হয়। এই ক্লাসটি ইনপুট ডেটা যাচাই করতে কাস্টম লজিক প্রদান করে।

Step 1: কাস্টম ভ্যালিডেশন রুল তৈরি করুন

using System;
using System.ComponentModel.DataAnnotations;

public class UppercaseAttribute : ValidationAttribute
{
    public override bool IsValid(object value)
    {
        var str = value as string;
        if (str != null)
        {
            return str.Equals(str.ToUpper());
        }
        return false;
    }

    public override string FormatErrorMessage(string name)
    {
        return $"{name} must be in uppercase.";
    }
}

এখানে, UppercaseAttribute কাস্টম ভ্যালিডেশন রুলটি চেক করবে যে ইনপুট ডেটা সব uppercase (বড় হাতের অক্ষরে) আছে কি না।

Step 2: কাস্টম রুল ব্যবহার করা

public class User
{
    [Required]
    [Uppercase]
    public string Name { get; set; }
}

এখানে, Name ফিল্ডের জন্য Uppercase রুলটি প্রয়োগ করা হয়েছে। যদি ইউজার Name ফিল্ডে ছোট হাতের অক্ষর ব্যবহার করেন, তাহলে একটি এরর মেসেজ প্রদর্শিত হবে।


Custom Validation Rules ব্যবহার করার সুবিধা


  1. ব্যবসায়িক প্রয়োজনীয়তা পূরণ: কাস্টম ভ্যালিডেশন রুলস আপনাকে ব্যবসায়িক বা অ্যাপ্লিকেশন স্পেসিফিক চাহিদা অনুযায়ী ডেটা যাচাই করতে সহায়তা করে।
  2. বিশেষ ধরণের ডেটা যাচাই: অনেক সময় ডেটা এমন ধরনের হতে পারে যেটি স্ট্যান্ডার্ড ভ্যালিডেশন রুলস দ্বারা যাচাই করা যায় না, যেমন একটি নির্দিষ্ট ফরম্যাট, বিশেষ কন্ডিশন বা কাস্টম লজিক।
  3. ব্যবহারকারী অভিজ্ঞতা উন্নত করা: কাস্টম ভ্যালিডেশন রুলস সহ এক্সপ্রেসিভ এবং স্পেসিফিক এরর মেসেজ দেওয়া যায়, যা ব্যবহারকারীদেরকে তাদের ইনপুট ভুল বুঝতে সহায়তা করে।

সার্বিকভাবে


Custom Validation Rules তৈরি করা এমভিসি ফ্রেমওয়ার্কে একটি শক্তিশালী বৈশিষ্ট্য যা ডেভেলপারদের নির্দিষ্ট ব্যবসায়িক লজিক বা ডেটা যাচাই করার জন্য কাস্টম রুল তৈরি করতে সহায়তা করে। Laravel বা ASP.NET MVC ফ্রেমওয়ার্কের মাধ্যমে কাস্টম রুল তৈরি করে, ডেভেলপাররা তাদের অ্যাপ্লিকেশনের জন্য বিশেষ ভ্যালিডেশন চাহিদা পূরণ করতে পারেন, যা অ্যাপ্লিকেশনটির নিরাপত্তা এবং ডেটা কোয়ালিটি বাড়ায়।

Content added By
Promotion

Are you sure to start over?

Loading...