Ошибка утверждение form request laravel 5

у меня есть form request указывая на драйвер особенно. Проблема, которая у меня есть, состоит в том, что в момент тестирования утверждения required полей, у меня выходит ошибка, тогда не, если я делаю что-то плохим или могу делать то, что я делаю по-другому. Пожалуйста, если они могут вести меня, он был бы большой помощи.

Код драйвера:

public function store(VentaRequest $request) 
{
     //Obtener el Codigo de documento       
        $doc = $request->mdccod_id;

        //Rescatar codigo de impuesto
        $mim = M_DCVT::Docu($doc);
        $mim = $mim->mimpcd_id;         

        //Rescatar clave de contabilización de documento
        $clave = M_DCVT::Docu($doc);
        $clave = $clave->mdccvc;

            //Rescatar sociedad
        $soci = $request->msocod_id;
            //Rescatar codigo de impuesto (C1)
        $codim = M_IMPT::Codigo($doc);
        $codim = $codim->mimpcd;

            //Rescatar cuenta contable de impuesto
        $ccim = M_IMPT::Iva($soci, $codim);
        $ccim = $ccim->mpccct;

        //Rescatar clave de contabilizacion de impuesto
        $cvc = M_IMPT::Iva($soci, $codim);
        $cvc = $cvc->mimcvc;

        // id del cliente
        $ccli = $request->mclcod_id;
            //Obtener el codigo del cliente
        $mclie = M_CLIE::CodigoCli($ccli);
        $mclie = $mclie->mclcod;

            //Buscar la clave de contabilizacion del cliente
            $clien = M_CLIE::Clave($soci, $mclie);      
            $clien = $clien->mclvcc;

            $clien2 = M_CLIE::Clave($soci, $mclie);
            $clien2 = $clien2->mpccct;

            $mone = M_SOCI::Moneda($soci);
            $mone = $mone->moncod_id;


            //Obtener fecha y guardsarlas en la base de datos
            $fecha = Carbon::createFromFormat('d-m-Y', $request->vtfedc)->Format('Y-m-d');
            $fechac = Carbon::createFromFormat('d-m-Y', $request->vtnfecn)->Format('Y-m-d');

            //tipo cliente para cuenta de ingresos
            $tpcl = M_CLIE::TipoCli($soci, $mclie);

            //Rescatar el arreglo de ids de los materiales
            $material = $request->input('mmscod_id',[]);



            //Rescatar codigo grupo imputacion material
            $impmate = M_MTSV::Imputacion($material, $soci);

            //Variable para rescatar cuenta ingreso de la tabla dt_ctin
            $dcingre = [];
            //Rescate de la cuenta de ingreso
            $dcingre = DT_CTIN::CodImpMat($material,$soci,$tpcl,$impmate);
            //dd($dcingre);


            //Capturar cantidad de cada producto en un arreglo      
            $cant = $request->input('vtcanp',[]);
            //Capturar precio de cada producto en un arreglo
            $prec = $request->input('vtprep',[]);




            $pedido = PV_VTA::create([          
                'msocod_id' => $request->msocod_id,
                'tvtcod_id' => $request->tvtcod_id,
                'stpvcd_id' => 1
                ]);




            $documento = VT_DOC::create([
                    'msocod_id' =>$request->msocod_id,
                    'vtndoc' =>$request->vtndoc,
                    'mclcod_id' =>$request->mclcod_id,
                    'msucod_id' =>$request->msucod_id,
                    'tvtcod_id' =>$request->tvtcod_id,
                    'mdccod_id' =>$request->mdccod_id,  
                    'moncod_id' =>$mone,
                    'pvnped'=>$pedido->pvnped,                          
                    'vtfedc' =>$fecha,
                    'vtnfecn' =>$fechac,                
                    'concod_id' =>$request->concod_id,
                    'vtpjds' =>$request->vtpjds,                            
                    'mimpcd_id' => $mim,
                    'mdccvc' =>$clave,
                    'vtccim' =>$ccim,
                    'mimcvc' =>$cvc,
                    'mclvcc' =>$clien,
                    'vtpcon' =>$request->mes,
                    'vtacon' =>$request->anno,
                    'vtcccli'=>$clien2

                ]);






            $attach = [];


            foreach ($material as $k=>$id){
                $attach[$id] = [];



                // Agregar el arreglo quantity en la variable attach segun su relacion con el id del producto
                if(array_key_exists($k, $cant)){
                    $attach[$id]['vtcanp'] = $cant[$k];

                }

                // Agregar el arreglo price en la variable attach segun su relacion con el id del producto
                if(array_key_exists($k, $prec)){
                    $attach[$id]['vtprep'] = $prec[$k];


                }

                //Campo de numero rescatado de la base de datos desde otra funcion. El numero es un campo asociado al producto, el cual 
                // se ingresa automaticamente y es asociado a un solo producto en particular
                if(array_key_exists($k, $dcingre)){
                   $attach[$id]['vtccin'] = $dcingre[$k];

                }
            //Ids de los productos
                if(empty($attach[$id])){
                    $attach[$id] = $id;
                }
            }


              $documento->m_mtsv()->attach($attach);
            Session::flash('message', 'Documento creado correctamente');
           return Redirect::to('/venta');
          }

Request:

 'required',
        'mclcod_id' => 'required',
    ];




}
}

Error

Код вида:

Documento venta Prueba


{!!Form::select('msocod_id',['' => '- Seleccione una sociedad -'] +$soci,null, ['class' => 'form-control','id'=>'msocod_id', 'name'=>'msocod_id'])!!}
{!!Form::text('vtndoc', null,['class'=>'form-control', 'placeholder'=>'ingrese num'])!!}
{!!Form::select('mclcod_id',['' => '- Seleccione un cliente -'] +$cli,null, ['class' => 'form-control'])!!}
 
{!!Form::select('msucod_id',['' => '- Seleccione una sucursal -'] +$sucu,null, ['class' => 'form-control'])!!}
{!!Form::select('tvtcod_id',['' => '- Seleccione una sucursal -'] +$tventa,null, ['class' => 'form-control'])!!}
{!!Form::select('mdccod_id',['' => '- Seleccione una clase -'] +$doc,null, ['class' => 'form-control', 'id'=> 'mdccod_id', 'name'=>'mdccod_id'])!!}
{!!Form::text('vtfedc', null, ['class'=>'form-control', 'id' => 'vtfedc','name'=>'vtfedc' ,'placeholder'=>'dd-mm-aaaa','data-error'=> 'Please enter name field.'])!!}
{!!Form::text('vtnfecn', null, ['class'=>'form-control', 'id' => 'vtnfecn','name'=>'vtnfecn', 'placeholder'=>'dd-mm-aaaa'])!!}
{!!Form::select('concod_id',['' => '- Seleccione una condicion -'] +$condi,null, ['class' => 'form-control'])!!}
{!!Form::text('vtpjds', null,['class'=>'form-control', 'placeholder'=>'ingrese num', 'id' => 'vtpjds', 'name' => 'vtpjds'])!!}

Codigo Art./servicios Descricpión Art./servicios Cantidad Precio Valor neto
{!!Form::select('mmscod_id[]',['' => '- Seleccione un material -'] +$mat,null, ['class' => 'form-control', 'id'=>'mmscod_id'])!!} {!!Form::text('descripcion',null, ['class' =>'form-control','id'=>'descripcion' ,'disabled'=>'disabled'])!!} {!!Form::text('vtcanp[]', null , ['class'=>'form-control', 'id'=>'cantidad']) !!} {!!Form::text('vtprep[]', null,['class'=>'form-control', 'id'=>'precio'])!!} {!!Form::text('condes', null,['class'=>'form-control', 'id'=>'valorn', 'name'=>'valorn', 'disabled'=>'disabled'])!!}
Agregar linea

Total neto Valor descuento Monto neto IVA Monto total

1
задан 21.06.2017, 01:35
1 ответ

Проблема связана с генератором html и формулярами Ларавэль Кольективе, ты перемещаешь в поле текста array, но утверждение ждет string:

{!!Form::text('vtcanp[]', null , ['class'=>'form-control', 'id'=>'cantidad']) !!}

{!!Form::text('vtprep[]', null,['class'=>'form-control', 'id'=>'precio'])!!}

Как кажется, в момент перезагружения старой стоимости формуляра (я думаю, что они пустые), генератор HTML/Forms находит такой пустой array как стоимость этих двух полей и это не действительные аргументы ввода htmlentities ().

Возможно, что он происходит, потому что поля пустые, или что это вирус этой версии, генератор формуляров обычно функционирует таким образом, так что почти, что является feature и не вирусом.


Возможное решение для этого типа случаев состоит в том, чтобы не перемещать эти поля из-за генератора формуляров, и использовать html сигару:

<input type="text" name="vtcanp[]" class="form-control" id="cantidad">

<input type="text" name="vtprep[]" class="form-control" id="precio">
1
ответ дан 24.11.2019, 13:29
  • 1
    Спасибо Shaz я попытаюсь и буду комментировать, как он я пошел. – Andrés Gómez Vega 05.09.2016, 23:45
  • 2
    Смените эти линии на inputs, но меня бросает та же ошибка:/ – Andrés Gómez Vega 05.09.2016, 23:56
  • 3
    Это не могут быть точно те же ошибки, не est и # 225; s сходя за formbuilder. – Shaz 06.09.2016, 00:03
  • 4
    Perd и # 243; n, в конце концов s и # 237; я следую. Возобновите сервер разработки laravel и функции и # 243; сейчас он не падает, на самом деле большое спасибо из-за твоей помощи. – Andrés Gómez Vega 06.09.2016, 00:15

Теги

Похожие вопросы