Saya mempunyai laluan GET dengan kad bebas Tarikh.
Kad bebas hari ialah rentetan seperti ini: 20220507 (YYYYMMDD).
Selepas mengesahkan rentetan saya mahukan respons yang betul. Sebelum menghantar respons saya ingin mengesahkan panjang dan format rentetan.
Soalan saya ialah, adakah mungkin untuk mengesahkan rentetan menggunakan IlluminateFoundationHttpFormRequest atau IlluminateHttpRequest Dibuat oleh: Request? Atau adakah mereka hanya menerima permintaan penerbitan?
Kod:
php artisan make:request CalendarDayRequest
Contoh mendapatkan laluan dalam web.php
Route::get('/calendar/{day}' , 'App\Http\Controllers\HomeController@calendar')->name('calendar');
Contoh Pengawal
use App\Http\Requests\CalendarDayRequest; public function calendar ( CalendarDayRequest $request ) { // Code }
atau pengawal sampel 2
use Illuminate\Http\Request; public function calendar ( Request $request ) { $validated = $request->validate([ 'day' => 'required', ]); }
Saya mendapat ralat: Gelung ubah hala tanpa had, terlalu banyak ubah hala.
Pertama sekali, anda tidak boleh mengesahkan parameter laluan dalam permintaan borang
Walau bagaimanapun, anda boleh menggunakan ungkapan biasa untuk mengesahkan laluan anda Contoh:
Jika anda masih mahu menggunakan
validate()
fungsi atau permintaan borangKaedah permintaan borang - timpa
all()
kaedahJika ia tidak berkesan, cuba kod berikut
Bagaimana untuk mengesahkan parameter laluan dalam Laravel 5?
Tetapi jika anda ingin menggunakan fungsi
validate()
, saya syorkan anda menghantarnya sebagai parameter permintaan.