လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Laravel routing parameter surnification ကိုအပြည့်အစုံ - ပုံမှန်, စိတ်ကြိုက်စည်းမျဉ်းစည်းကမ်းများနှင့် Controller နည်းလမ်းများ

Laravel routing parameter surnification ကိုအပြည့်အစုံ - ပုံမှန်, စိတ်ကြိုက်စည်းမျဉ်းစည်းကမ်းများနှင့် Controller နည်းလမ်းများ

gitbox 2025-07-28

Laravel သို့နိဒါန်း

Laravel သည်၎င်း၏ရိုးရှင်းမှုနှင့်ကြော့ရှင်းမှုကြောင့်လူသိများသောခေတ်သစ် PHP web application framework ဖြစ်သည်။ developer များလျင်မြန်စွာတည်ဆောက်ရန်နှင့်ထိန်းသိမ်းနိုင်သော applications များကိုလျင်မြန်စွာတည်ဆောက်ရန်ကူညီရန်ကြွယ်ဝသောအင်္ဂါရပ်များကိုပေးသည်။ ၎င်းတို့အနက် routing function သည် Laravel ၏အဓိကအစိတ်အပိုင်းတစ်ခုဖြစ်သည်။

routing parameters တွေကိုဘာတွေလဲ

Laravel တွင် routing parameters များသည် url လမ်းကြောင်း၏ dynamic အစိတ်အပိုင်းများဖြစ်သည်။ ဥပမာ - / အသုံးပြုသူများ / {ID} ။ ဤနေရာတွင် ID သည် routing parameter တစ်ခုဖြစ်ပြီးတောင်းဆိုမှုကိုအလိုက်ပြောင်းလဲနိုင်သည်။

အဘယ်ကြောင့် routing parameters တွေကိုအတည်ပြုရန်လိုအပ်သနည်း

routing parameterscers များသည်လျှောက်လွှာတင်ရေးကိုသေချာစေရန်အဓိကအတိုင်းအတာတစ်ခုဖြစ်သည်။ အတည်မပြုရသေးသော parameterscers များသည်လျှောက်လွှာယုတ္တိဗေဒချွင်းချက်များကိုဖြစ်ပေါ်စေပြီးအန္တရာယ်ရှိသောတိုက်ခိုက်မှုများကိုပင်အသုံးချနိုင်သည်။ parameters တွေကို, တရားမ 0 င်တောင်းဆိုမှုများ, အချက်အလက်ချိုးဖောက်မှုများကိုအတည်ပြုခြင်းအားဖြင့်, အချက်အလက်ချိုးဖောက်မှုများနှင့်အလားအလာရှိသောလုံခြုံရေးအားနည်းချက်များ

ပုံမှန်အသုံးအနှုန်းများကို အသုံးပြု. routing parameters တွေကိုစစ်ဆေးပါ

လမ်းကြောင်းများကိုသတ်မှတ်သည့်အခါ parameter formats များကိုကန့်သတ်ရန် Laravel သည်ပုံမှန်အသုံးအနှုန်းများကို အသုံးပြု. ပုံမှန်အသုံးအနှုန်းများကိုအသုံးပြုသည်။ ဤနည်းလမ်းသည်ရိုးရှင်းသောစိစစ်အတည်ပြုလိုအပ်ချက်များအတွက်သင့်လျော်သည်။

 
Route::get('/users/{id}', function ($id) {
    // ယုတ္တိဗေဒ processing
})->where('id', '[0-9]+');

အထက်ဖော်ပြပါကုဒ်တွင် method သည် iD Parameter သည်ဂဏန်းတစ်ခုသို့မဟုတ်တစ်ခုထက်ပိုသောဂဏန်းများဖြစ်ရမည်။ အကယ်. ဤစည်းမျဉ်းကိုမတွေ့ပါက Laravel သည် 404 အမှားစာမျက်နှာသို့အလိုအလျောက်ပြန်သွားလိမ့်မည်။

ထုံးစံစည်းမျဉ်းများကို အသုံးပြု. parameters တွေကိုစစ်ဆေးပါ

အတည်ပြုသည့်ယုတ္တိဗေဒသည်ရှုပ်ထွေးသောအခါထုံးစံစည်းမျဉ်းများကိုအသုံးပြုရန်အကြံပြုသည်။ ဥပမာအားဖြင့်, ID parameter သည်ပင်နံပါတ်တစ်ခုကိုပင်ဖြစ်ချင်သည်။

ပထမ ဦး စွာထုံးစံစည်းမျဉ်းအတန်းကိုဖန်တီးပါ။

 
namespace App\Rules;

use Illuminate\Contracts\Validation\Rule;

class UserIdRule implements Rule
{
    public function passes($attribute, $value)
    {
        return $value % 2 == 0;
    }

    public function message()
    {
        return 'The user id must be even.';
    }
}

ထို့နောက် routing definition မှစည်းမျဉ်းကိုသုံးပါ။

 
use App\Rules\UserIdRule;

Route::get('/users/{id}', function ($id) {
    // ယုတ္တိဗေဒ processing
})->where('id', new UserIdRule);

ဤအချိန်တွင်ထူးဆန်းသော ID ကို ဖွင့်ပါက Laravel သည်အမှားအယွင်းတစ်ခုပြန်ပို့လိမ့်မည်။

Controller အတွက် routing parameters တွေကိုစစ်ဆေးပါ

ပိုမိုအကြံပြုထားသောချဉ်းကပ်နည်းသည် Centroller တွင် Centrally Parameter Verification ကိုကိုင်တွယ်ရန်ဖြစ်သည်။ မှီခိုအားထားမှုနှင့် အတည်ပြု နည်းစနစ်များကိုအတည်ပြုခြင်းဖြင့်အတည်ပြုသည့်ယုတ္တိဗေဒကိုပိုမိုရှင်းလင်းစွာထိန်းသိမ်းရန်ပိုမိုလွယ်ကူစွာပြုလုပ်နိုင်သည်။

 
namespace App\Http\Controllers;

use App\Models\User;
use Illuminate\Http\Request;

class UserController extends Controller
{
    public function show(Request $request, User $user)
    {
        $request->validate([
            'id' => 'required|numeric|even'
        ]);

        // 正确参数ယုတ္တိဗေဒ processing
    }
}

ဤဥပမာတွင် မှန်ကန်သော နည်းလမ်းမှာ ID parameter သည်တည်ရှိရမည်ဟုသေချာစေသည်။ အတည်ပြုခြင်းမအောင်မြင်ပါက Laravel သည်အပိုဆောင်းအပြောင်းအလဲနဲ့အမှားအယွင်းများကိုအလိုအလျောက်ပြန်ပို့လိမ့်မည်။

အကျဉ်းချုပ်

Laravel ရှိ routing parameters များကိုစစ်ဆေးခြင်းသည်လျှောက်လွှာလုံခြုံရေးကိုတိုးတက်စေရုံသာမကအသုံးပြုသူအတွေ့အကြုံကိုမြှင့်တင်ပေးသည်။ ပုံမှန်အသုံးအနှုန်းများမှတစ်ဆင့်ဖြစ်စေ, Controller တွင် Centroller တွင်အတည်ပြုခြင်း, ဖွံ့ဖြိုးတိုးတက်မှုလုပ်ငန်းစဉ်အတွင်းလျှောက်လွှာ၏တည်ငြိမ်မှုနှင့်လုံခြုံမှုကိုသေချာစေရန်အမှန်တကယ်လိုအပ်ချက်များနှင့်အညီသင့်လျော်သောနည်းလမ်းများကိုရွေးချယ်သင့်သည်။

မကြာသေးမီ ဆောင်းပါးများ