繁体   English   中英

Laravel 8:表单验证无法正常工作

[英]Laravel 8: Form Validation Does Not Work Properly

我有这样的表格:

<form action="{{ route('profile.2fa.phone') }}">
    @csrf
    <div class="form-group">
        <label for="token" class="col-form-label">Token</label>
        <input type="text" class="form-control @error('token') is-invalid @enderror" name="token" placeholder="enter your token">
        @error('token')
            <span class="invalid-feedback">
                <strong>{{ $message }}</strong>
            </span>
        @enderror
    </div>
    <div class="form-group">
        <button class="btn btn-primary">Validate token</button>
    </div>
</form>

在此表单中,如果输入字段为空,则class="form-control @error('token') is-invalid @enderror"应该在表单输入周围制作一个红色矩形,并且{{ $message }}应该返回消息The token field is required

现在的问题是,它根本不起作用,我的意思是当您将输入留空时,然后单击按钮。 页面上没有错误报告。

所以我的问题是,如何解决这个问题并验证这个表单,这样用户就不能把输入留空?

更新: Controller ProfileController有两种与此刀片相关的方法:

public function getPhoneVerify()
{
    return view('profile.phone-verify');
}

public function postPhoneVerify(Request $request)
{
    $request->validate([
        'token' => 'required'
    ]);


    return $request->token;
}

web.php上,这两条路由处理请求:

Route::get('profile/twofactor/phone', [App\Http\Controllers\ProfileController::class, 'getPhoneVerify'])->name('profile.2fa.phone');
Route::post('profile/twofactor/phone', [App\Http\Controllers\ProfileController::class, 'postPhoneVerify']);

引导程序是错误的。 尝试更改此行:

<span class="invalid-feedback">

至:

<span class="text-danger">

看看它是否有效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM