2017-05-22 63 views
1

我有角色表。當在角色表中存儲新數據時,我需要檢查role_name並且role_id已經存在。如何檢查laravel?如何檢查兩個輸入是否已經存在於laravel中?

id role_name role_id 1 admin 1 2 user 2

RoleRequest.php

class RoleRequest extends FormRequest 
{ 

    public function authorize() 
    { 
     return true; 
    } 


    public function rules() 
    { 
     return [ 
      'role_name' => 'required|unique:role|max:50', 
      'role_id' => 'required|unique:role|max:10' 
     ]; 
    } 
} 

回答

4

如果你想確保字段在數據庫中存在,則可以使用exists驗證規則來做到這一點。

可以使用如下:

exists:table,column 

所以,例如,

public function rules() 
{ 
    return [ 
     'role_name' => 'exists:roles,role_name'' 
    ]; 
} 

但是,如果你想確保字段在數據庫獨特,你可以使用unique驗證規則,如下所示:

public function rules() 
{ 
    return [ 
     'role_name' => 'unique:roles,role_name'' 
    ]; 
} 
0

你可以使用獨特的驗證規則,但你還需要設置列名

return [ 
     'role_name' => 'required|unique:roles,role_name|max:50', 
     'role_id' => 'required|unique:roles,role_id|max:10' 
]; 
0
public function rules() 
{ 
    return [ 
     'role_name' => 'required|max:50|unique:roles,role_name', 
     'role_id' => 'required|max:10|unique:roles,role_id' 
    ]; 
} 
0
public function rules() 
{ 
return [ 
    'role_name' => 'required|max:50|unique:roles,role_name', 
    'role_id' => 'required|max:10|unique:roles,role_id' 
]; 
} 
相關問題