【发布时间】:2017-02-15 05:46:54
【问题描述】:
我正在使用 Laravel 5.3 和 https://github.com/1000hz/bootstrap-validator
我正在根据我在 Laravel 中的数据库检查用户的电子邮件,以检查电子邮件是否正在使用中。
Bootstrap Validator 上的文档声明如果电子邮件地址正常(即不存在)则返回 200,如果存在则返回 4xx 错误。
在我的 Laravel 函数中,我正在执行以下操作:
public function check_email(Request $request)
{
// Email Address
$email = User::where('email', $request->input('email'))
->take(1)
->get();
$email = $email->toArray();
if(empty($email))
{
return response()->json(['Email Not Taken'], 200);
}
else
{
return response()->json(['Email In Use'], 400);
}
}
现在当我运行验证器时,它没有显示消息。这是因为 Laravel 对其响应代码更严格吗?还是我只是做错了什么?
我的 HTML 代码如下:
<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
<input id="email" type="email" class="form-control" name="email" value="{{ old('email') }}" placeholder="Email" data-remote="/validate-email" data-error="Please enter your Email Address" required="required">
@if ($errors->has('email'))
<span class="help-block">
<strong>{{ $errors->first('email') }}</strong>
</span><!-- /.help-block -->
@endif
<span class="glyphicon form-control-feedback" aria-hidden="true"></span>
<div class="help-block with-errors"></div>
</div><!-- /.form-group -->
如何在 Larvel 5.3 中设置带有消息的 4xx 响应?
谢谢
【问题讨论】:
标签: php laravel validation twitter-bootstrap-3