[英]Laravel query check if table column value exists
我有一个 Category 表,在我的 RegistrationController 中我在另一个查询中使用 Category,所以我想要另一个查询来检查 cte_gender_id 是否有 1、2 和 3 作为列中的值。
我现在拥有的:(在 RegistrationController 中)
$category = Category::where('cte_distance_id', $distance_id)
->where('cte_gender_id', $gender_id);
if(is_null($categorie)){
return back()->with("errorMessage", "Categorie not found");
}
谢谢您的帮助!
试试这个方法:
$gender_id = ['1', '2', '3'];
// If you suppose collection
$category = Category::where('cte_distance_id', $distance_id)
->whereIn('cte_gender_id', $gender_id)->get();
if($category->isEmpty()){
return back()->with("errorMessage", "Categorie not found");
}
// If you suppose single element
$category = Category::where('cte_distance_id', $distance_id)
->whereIn('cte_gender_id', $gender_id)->first();
if($category){
return back()->with("errorMessage", "Categorie not found");
}
您可以使用whereIn
的Elequent ORM
方法检查数组值,
对于多个数据
$gender_id_list = ['1', '2', '3'];
$category = Category::where('cte_distance_id', $distance_id)
->whereIn('cte_gender_id', $gender_id_list)->get();
if($category->isEmpty()){
return back()->with("errorMessage", "Categorie not found");
}
对于单曲和首曲
$gender_id_list = ['1', '2', '3'];
$category = Category::where('cte_distance_id', $distance_id)
->whereIn('cte_gender_id', $gender_id_list)->first();
if(!$category){
return back()->with("errorMessage", "Categorie not found");
}
您可以对 get 和 first 方法进行这种评估:
if(!isset($category) || count($category) < 1){
return back()->with("errorMessage", "Categorie not found");
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.