Validation 如何将输入与laravel验证中的某些特定数据进行比较

Validation 如何将输入与laravel验证中的某些特定数据进行比较,validation,laravel-5,registration,Validation,Laravel 5,Registration,我正在制作一个web应用程序,我希望只有那些知道特殊代码的人才能注册。我应该如何做或检查用户在注册表上输入的代码..RegisterController中的validator函数有以下代码:- protected function validator(array $data) { return Validator::make($data, [ 'name' => 'required|max:255', 'email' => 'req

我正在制作一个web应用程序,我希望只有那些知道特殊代码的人才能注册。我应该如何做或检查用户在注册表上输入的代码..RegisterController中的validator函数有以下代码:-

    protected function validator(array $data)
{ 
     return Validator::make($data, [
        'name' => 'required|max:255',
        'email' => 'required|email|max:255|unique:users',
        'place' => 'required|max:255',
        'password' => 'required|min:6|confirmed',
                ]);

}

我应该包括哪些内容?

如果您想将注册码存储在单独的表中,您可以在验证器中执行此操作

codes
    id - integer
    code - string
验证逻辑

'code' => 'required|exists:codes',
'code' => 'required|registration_code,
如果要使用自定义列名进行验证,则可以执行此操作

'code' => 'required|exists:codes,columnName',

如果代码是简单的硬编码值,则可以编写自定义验证规则并使用它

将此添加到
AppServiceProvider的
boot
方法中

Validator::extend('registration_code', function ($attribute, $value, $parameters, $validator) {
    return $value === 'supersecretcode';
});
验证逻辑

'code' => 'required|exists:codes',
'code' => 'required|registration_code,

如果你使用的是控制器,你可以使用这个

public function validator(Request $request)
{
    // validation

        $this->validate($request, array( 
            'title' => 'required|max:255',
            'slug' => 'required|alpha_dash|min:5|max:255|unique:posts,slug',               
            'body' => 'required'

            ));  

代码将是相同的还是每个用户都将在某个地方存储一些唯一的代码,比如说在db中??代码将是相同的。从现在开始。无论如何,你必须扩展验证程序检查此链接谢谢你@RohitS:)@kuru是的,先生,Kuro,我是新发布答案的!!!谢谢,我试着把代码放进井里。但我很乐意帮忙:)!!