Моя проверка формы не показывает никакой ошибки
Мой файл route.php выглядит следующим образом:
Route::post('/user/add/form', [ 'uses' => 'AdminController@adduser', 'as' => 'admin.add.user.to.database' ]);
Моя функция adduser в AdminController содержит следующее:
$this->validate($request,[ 'email'=> 'required|email', 'name'=> 'required', 'password'=> 'required', 'aright'=> 'required', 'dob' => 'date', 'publication'=> 'string', 'utype' => 'required' ]);
Это вид лезвия, который я использую для формы. Это запрашивает некоторые из полей, которые показаны в функции контроллера, и должны показывать ошибку, если требуемое поле не заполнено, но оно ничего не показывает.
@extends('layouts.admin-master') @section('styles') <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap /3.3.6/css/bootstrap.min.css"> @endsection @section('scripts') <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script> <script type="text/javascript"> var token = "{{ Session::token() }}"; </script> @endsection @section('content') @include('includes.info') @if(count($errors) > 0) @foreach($errors->all() as $error) <h1> {!! $error->first() !!} </h1> @endforeach @endif <div class="container"> <h2>Add User Form</h2> <form class="form-horizontal" method="post" action="{{ route('admin.add.user.to.database') }}"> <div class="row"> <div class="col-sm-6"> <div class="form-group"> <label class="control-label col-sm-2" for="email">Email:</label> <div class="col-sm-10"> <input type="email" class="form-control" id="email" placeholder="Enter email" name="email" value="{{ Request::old('email') }}"> </div> </div> </div> <div class="col-sm-6"> <div class="form-group"> <label class="control-label col-sm-2" for="name">Name:</label> <div class="col-sm-10"> <input type="text" class="form-control" id="name" placeholder="Enter name" name="name"> </div> </div> </div> </div> <div class="row"> <div class="col-sm-6"> <div class="form-group"> <label class="control-label col-sm-2" for="pwd">Password:</label> <div class="col-sm-10"> <input type="password" class="form-control" id="pwd" placeholder="Enter password" name="password"> </div> </div> </div> <div class="col-sm-6"> <div class="form-group"> <label class="control-label col-sm-2" for="aright">Access Type:</label> <select class="col-sm-10" id="aright" name="aright"> <option value="2">Normal Member</option> <option value="1">Admin</option> </select> </div> </div> </div> <div class="row"> <div class="col-sm-6"> <div class="form-group"> <label class="control-label col-sm-2" for="publication">Publication:</label> <div class="col-sm-10"> <input type="text" class="form-control" id="publication" placeholder="Enter publication link" name="publication"> </div> </div> </div> <div class="col-sm-6"> <div class="form-group"> <label class="control-label col-sm-2" for="dob">Date of birth:</label> <div class="col-sm-10"> <input type="date" class="form-control" id="dob" placeholder="Enter DOB" name="dob"> </div> </div> </div> </div> <div class="form-group"> <label class="control-label col-sm-2" for="utype">User Type:</label> <select class="col-sm-10" id="aright" name="utype"> <option value="2">Faculty</option> <option value="1">Student</option> </select> </div> <div class="form-group text-center"> <div class="col-sm-offset-2 col-sm-10"> <button type="submit" class="btn btn-primary">Submit</button> </div> </div> <input type="hidden" name="_token" value="{{ Session::token() }}"> </form> </div> @endsection
Начиная с версии 5.2.27, выпущенной в 2015-03-25, все маршруты в app \ Http \ routes.php по умолчанию находятся в группе промежуточного программного обеспечения. Если вы явно указали эту промежуточную группу внутри вашего файла app \ Http \ routes.php, вам необходимо удалить ее.
Я думаю, проблема в том, что вы вызываете first () в ошибке? first () – это метод экземпляра MessageBag, то есть $ errors. См. Проблемную строку
<h1> {!! $error->first() !!} </h1>
Изменить на
<h1> {{ $error }} </h1>