Laravel 组织的身份验证检查

Laravel Auth Check For An Organization

当用户尝试注册时,我要求他们输入组织 ID,我希望根据我的组织 table 检查该组织 ID 并查看它是否存在。如果存在则注册用户,如果失败则 return 一条错误消息。我一直在网上四处寻找,但个人找不到这样的东西。如果有人能提供帮助,我将不胜感激。

我正在使用 Laravel 5.6 和默认授权。

验证者:

return Validator::make($data, [
    'first_name' => 'required|string|max:255',
    'last_name' => 'required|string|max:255',
    'org_id' => 'required|string|max:16',
    'email' => 'required|string|email|max:255|unique:users',
    'password' => 'required|string|min:6|confirmed',
]);

用户创建:

 return User::create([
                'first_name' => $data['first_name'],
                'last_name' => $data['last_name'],
                'org_id' => $data['org_id'],
                'email' => $data['email'],
                'password' => Hash::make($data['password']),
                'is_active' => 1
            ]);

您正在寻找 Laravel 验证的 exists 规则:

'org_id' => 'required|string|max:16|exists:organizations,id',

规则本质上是

exists:{table},{column?}

其中table是必需的,column是可选的,一般在name(本例org_id)与你想要的列不同时使用比较。

有关完整详细信息,请查看 Documentation