Ошибка проверки (преобразование массива в строку) в 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();
            }


        }
Другие вопросы по тегам