Ich habe eine GET-Route mit einem Platzhalter Datum.
Der Tagesplatzhalter ist eine Zeichenfolge wie diese: 20220507 (JJJJMMTT).
Nachdem ich die Zeichenfolge validiert habe, möchte ich eine korrekte Antwort. Bevor ich die Antwort sende, möchte ich die Länge und das Format der Zeichenfolge überprüfen.
Meine Frage ist, ist es möglich, die Zeichenfolge mit IlluminateFoundationHttpFormRequest oder IlluminateHttpRequest zu validieren Erstellt von: Anfrage? Oder akzeptieren sie nur Veröffentlichungsanfragen?
Code:
php artisan make:request CalendarDayRequest
Beispiel für das Abrufen von Routen in web.php
Route::get('/calendar/{day}' , 'App\Http\Controllers\HomeController@calendar')->name('calendar');
Probencontroller
use App\Http\Requests\CalendarDayRequest; public function calendar ( CalendarDayRequest $request ) { // Code }
oder Sample-Controller 2
use Illuminate\Http\Request; public function calendar ( Request $request ) { $validated = $request->validate([ 'day' => 'required', ]); }
Ich erhalte die Fehlermeldung: Endlose Weiterleitungsschleife, zu viele Weiterleitungen.
首先,您无法验证表单请求中的路由参数
但是,您可以使用正则表达式来验证您的路线 示例:
如果您仍想使用
validate()
函数或表单请求表单请求方式 - 重写
all()
方法如果不起作用,请尝试以下代码
Laravel 5 如何验证路由参数?
但是如果您想使用
validate()
函数,我建议您将其作为请求参数发送。