Ошибка проверки (преобразование массива в строку) в laravel 5.1
Я пытаюсь пару часов, чтобы исправить эту ошибку, но не повезло, пожалуйста, мне нужна помощь об этой ошибке всегда говорит: (преобразование массива в строку)
Код:
<?php
namespace App\Http\Controllers;
use Validator;
use Illuminate\Http\Request;
use App\Http\Requests;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Hash, Auth, URL, Route, Cart, View, Paypal;
use App\Product, App\ProductBenefit, App\Country, App\Currency, App\User, App\City;
class HomeController extends BaseController {
public function postCheckoutStepPayment(Request $request){
if(!is_null($request->input('ship_to_diff_address'))){
$validate = Validator::make($request->all(), User::$rules);
if($validate->fails()) { //<- problem this part
return 'failed';
}
}
}
}
User.php
public static $rules = array(
'diff_firstname' => 'required',
'diff_lastname' => 'required',
'diff_phone' => 'required',
'diff_countries' => 'required',
'diff_city' => 'required',
'diff_state' => 'required',
'diff_address' => 'required',
);
3 ответа
Похоже, что значение для локали в вашем config / app.php является массивом, тогда как функция loadPath в vendor/laravel/framework/src/Illuminate/Translation/FileLoader.php ожидает, что это будет строка. Поэтому я предлагаю вам установить его значение в 'en' или 'sv' в файле конфигурации, а затем позже изменить его программно в вашем коде по мере необходимости.
Добавьте этот класс в свой контроллер
use App\Http\Requests;
И попробуйте этот код в блейд-файле.
@if(isset($errors))
<ul style="list-style: none;" class="alert alert-warning">
@foreach($errors->all() as $content)
<li>{{$content}}</li>
@endforeach
</ul>
@endif
Добавлять use Redirect
наверху и
public function postRegister(Request $request)
{
$v = Validator::make($request->all(), [
'firstname' => 'required',
'lastname' => 'required',
'phone' => 'required',
'countries' => 'required',
'city' => 'required',
'state' => 'required',
'address' => 'required',
]);
if ($v->fails()) {
return redirect::to('register')
->withErrors($v->messages())
->withInput();
}
}