2016-08-30 16 views
0

Im使用ダイナミックフォーム入力の挿入配列データしかし、配列の検証は私のためには機能しません。空白値としてデータベースに保存することなく入力できます。動的フォーム入力データのラーバル検証?

<tr v-for="row in rows"> 
<td>{!! Form::text('description[]',null,['class' => 'input-field input-sm','v-model'=>'row.description']) !!} 
@if ($errors->has('description')) 
     <span class="error"><i class="glyphicon glyphicon-warning-sign" data-toggle="tooltip" data-placement="top" title="{{ $errors->first('description') }}"></i></span>@endIf</td> 
<td>{!! Form::text('log_time[]',null,['class' => 'input-field input-sm','v-model'=>'row.log_time']) !!} 
     @if ($errors->has('log_time'))<span class="error"><i class="glyphicon glyphicon-warning-sign" data-toggle="tooltip" data-placement="top" title="{{ $errors->first('log_time') }}"></i></span>@endIf </td> 
<td> <a @click="removeRow(row)"><button class="btn btn-danger" type="button" id="dim"> 
      <span class="glyphicon glyphicon-minus"></span></button> </a> 
      <a @click="addRow"><button class="btn btn-success" type="button" id="dim"> 
       <span class="glyphicon glyphicon-plus"></span></button></a> 
</td> 
</tr> 

マイコントローラーストア機能:

ここ
protected $rules = [ 
     'row.description' => ['required|array'], 
     'row.log_time' => ['required|array'], 
    ]; 
public function store(PslCall $call,Request $request) 
    { 
     $this->validate($request, $this->rules); 
     $data = array(); 
     foreach($request->description as $key=>$value){ 
      $data[]=[ 
       'description'=> $value, 
       'log_time'=> $request->log_time[$key], 
       'call_id'=>$call->id, 
       'created_at' => Carbon::now(), 
       'updated_at' => Carbon::now(), 
      ]; 
     } 

     PortLog::insert($data); 
     return Redirect::route('calls.logs.index',$call->id)->with('message','You have successfully submitted'); 
    } 

あなたは私のDDをチェックすることができ、私はvueJsを使用して動的なフォームフィールドのイムを追加し、このように私のフォーム入力を不活性しているテーブルの列で

()入力なしで挿入することができます:(これは私が検証を与える必要があります)

array:2 [▼ 
    0 => array:5 [▼ 
    "description" => "" 
    "log_time" => "" 
    "call_id" => 2 
    "created_at" => Carbon {#351 ▶} 
    "updated_at" => Carbon {#352 ▶} 
    ] 
    1 => array:5 [▼ 
    "description" => "" 
    "log_time" => "" 
    "call_id" => 2 
    "created_at" => Carbon {#353 ▶} 
    "updated_at" => Carbon {#354 ▶} 
    ] 
] 
+0

'$ request'には、検証するすべての値が含まれていますか? [{「値」:説明フィールドが配列のような、 「説明」の場合、今 –

+0

@SafoorSafdarチェック質問: 'testing'}、{'value': 'description content'}] 'description。*'として検証できますが、ここではそうは思いません。 – Developer

+0

見てのような、あなたの検証ルール –

答えて

3

issがありますueを使って$rulesを試してみてください

protected $rules = [ 
     'description.*' => 'required|min:1', 
     'log_time.*' => 'required|min:1', 
    ]; 
+0

を動作していない – suguna

関連する問題