Laravel framework တွင် Query Scopes သည် developer များကို developer များဖြစ်ပြီး developer များကသာမန် query logic ကို reusable method များသို့ 0 င်ရောက်နိုင်စေရန်စွမ်းဆောင်နိုင်သည်။ query scopes များကိုအသုံးပြုခြင်းအားဖြင့် developer များသည် controller သို့မဟုတ်အခြားအစိတ်အပိုင်းများမှရှုပ်ထွေးသောစုံစမ်းမှုအခြေအနေများကိုစိတ်တဇခွဲနိုင်ပြီး Code ကိုရိုးရှင်းပြီးထိန်းသိမ်းနိုင်သည်။ ၎င်းသည် Code ပုံတူပွားများကိုရှောင်ရှားရန်သာမကရှာဖွေရေးယုတ္တိဗေဒ၏ရှင်းလင်းမှုကိုသိသိသာသာတိုးတက်အောင်ကူညီပေးသည်။
Laravel တွင် query scope တစ်ခုဖန်တီးသည်။ eloquent မော်ဒယ်တွင် နယ်ပယ် နှင့်အတူရှေ့ဆက်ထားသောနည်းလမ်းကိုသင်သာသတ်မှတ်ရန်လိုအပ်သည်။ Active အသုံးပြုသူများအားလုံးရရှိသောစုံစမ်းမှုအကွာအဝေးကိုမည်သို့ဖန်တီးရမည်ကိုပြသသည့်ဥပမာတစ်ခုမှာဤတွင်ဖော်ပြထားသည်။
public function scopeActive($query) { return $query->where('active', 1); }
အထက်ပါကုဒ်တွင် scopective နည်းလမ်းသည် Active Field 1 နှင့်မှတ်တမ်းများကိုထုတ်ပေးသော query scope တစ်ခုဖြစ်ပါတယ်။ ဤနည်းကိုမည်သည့်နေရာတွင်မဆိုပြုလုပ်နိုင်သည်။
query နယ်ပယ်ကိုသတ်မှတ်ပြီးသည်နှင့်၎င်းကို Laravel တွင်တိုက်ရိုက်အသုံးပြုနိုင်သည်။ အောက်ပါကုဒ်သည်တက်ကြွသောအသုံးပြုသူများအားလုံးကိုမည်သို့ရယူရမည်ကိုပြသသည်။
$activeUsers = User::active()->get();
ဤနည်းအားဖြင့်သင်သည်တူညီသောစုံစမ်းမှုယုတ္တိဗေဒကိုထပ်ခါတလဲလဲရေးသားခြင်းမရှိဘဲသတ်မှတ်ချက်များနှင့်ကိုက်ညီသောအသုံးပြုသူများကိုအလွယ်တကူရယူနိုင်သည်။
Laravel သည်စုံစမ်းမှုနယ်ပယ်များစွာပေါင်းစပ်မှုကိုအထောက်အကူပြုသည်။ ထို့ကြောင့်သင်စုံစမ်းမှုအခြေအနေများ, မကြာသေးမီကဖန်တီးထားသောအသုံးပြုသူများကိုစစ်ထုတ်ရန် query scope တစ်ခုကိုလည်းသင်သတ်မှတ်သည်ဆိုပါစို့။
public function scopeRecent($query) { return $query->orderBy('created_at', 'desc'); }
Active နှင့်နောက်ဆုံးပေါ်အသုံးပြုသောအသုံးပြုသူများကိုမေးမြန်းရန်ဤစုံစမ်းမှုနယ်ပယ်နှစ်ခုကိုသင်ပေါင်းစပ်နိုင်သည်။
$recentActiveUsers = User::active()->recent()->get();
ဤနည်းအားဖြင့်သင်သည်တက်ကြွသောသုံးစွဲသူများအားလုံးကိုတစ်ချိန်တည်းတွင်ရနိုင်ပြီးဖန်ဆင်းခြင်းအချိန်အားဖြင့်အစဉ်အလာတွင်အစဉ်လိုက်ခွဲဝေနိုင်သည်။
Query Scopes များကိုအသုံးပြုခြင်းသည်သိသာထင်ရှားသည့်အားသာချက်များကိုဖြစ်ပေါ်စေသည်။
Laravel Query Scopes သည်ရှုပ်ထွေးသော Query Logic ကိုစီမံခန့်ခွဲရန်နှင့်ပြန်လည်အသုံးပြုရန်လှပသောနည်းလမ်းတစ်ခုကိုပေးသည်။ quation query scope ကို အသုံးပြု. developer များသည် developer များကထိန်းသိမ်းထားနိုင်မှုကိုတိုးတက်စေပြီး code ၏ပြန်လည်နေရာချထားမှုကိုတိုးတက်စေနိုင်သည်, အကယ်. သင်သည် query scopes မကြိုးစားခဲ့ပါက၎င်းကိုစတင် အသုံးပြု. ပိုမိုပြောင်းလွယ်ပြင်လွယ်။ ထိရောက်သောဖွံ့ဖြိုးရေးအတွေ့အကြုံကိုခံစားရန်အချိန်ရောက်လာပြီ။