📅  最后修改于: 2020-10-23 08:05:48             🧑  作者: Mango
在设计应用程序时,验证是最重要的方面。它验证传入的数据。默认情况下,基本控制器类使用ValidatesRequests特性,该特性提供了一种方便的方法,可以使用各种功能强大的验证规则来验证传入的HTTP请求。
Laravel将始终检查会话数据中的错误,并自动将它们绑定到视图(如果可用)。因此,需要注意的是,在每个请求的所有视图中, $ errors变量将始终可用,这使您可以方便地假定$ errors变量始终已定义并且可以安全使用。下表显示了Laravel中所有可用的验证规则。
Available Validation Rules in Laravel | ||
---|---|---|
Accepted | Active URL | After (Date) |
Alpha | Alpha Dash | Alpha Numeric |
Array | Before (Date) | Between |
Boolean | Confirmed | Date |
Date Format | Different | Digits |
Digits Between | Exists (Database) | |
Image (File) | In | Integer |
IP Address | JSON | Max |
MIME Types(File) | Min | Not In |
Numeric | Regular Expression | Required |
Required If | Required Unless | Required With |
Required With All | Required Without | Required Without All |
Same | Size | String |
Timezone | Unique (Database) | URL |
$ errors变量将是Illuminate \ Support \ MessageBag的实例。通过添加如下所示的代码,可以在视图文件中显示错误消息。
@if (count($errors) > 0)
@foreach ($errors->all() as $error)
- {{ $error }}
@endforeach
@endif
步骤1-通过执行以下命令来创建一个名为ValidationController的控制器。
php artisan make:controller ValidationController --plain
步骤2-成功执行后,您将收到以下输出-
步骤3-复制以下代码到
app / Http / Controllers / ValidationController.php文件。
app / Http / Controllers / ValidationController.php
all());
$this->validate($request,[
'username'=>'required|max:8',
'password'=>'required'
]);
}
}
步骤4-创建一个名为resources / views / login.blade.php的视图文件,并将以下代码复制到该文件中。
资源/视图/login.blade.php
Login Form
@if (count($errors) > 0)
@foreach ($errors->all() as $error)
- {{ $error }}
@endforeach
@endif
'/validation'));
?>
Login
Username
Password
第5步-在app / Http / routes.php中添加以下行。
app / Http / routes.php
Route::get('/validation','ValidationController@showform');
Route::post('/validation','ValidationController@validateform');
步骤6-访问以下URL以测试验证。
http://localhost:8000/validation
步骤7-单击“登录”按钮,而不在文本字段中输入任何内容。输出将如下图所示。