2015-12-02 83 views
1

我必須展示/在我的網頁編輯表單。我從表中獲取所有行並以可編輯的表格格式顯示。 一旦表格被編輯。我想要使​​用控制器在數據庫中更新所有這些行,但是我不知道如何通過laravel 5.1中的請求對象獲取所有表單行。如何獲取表單的多行數據控制器laravel 5.1

$records = $request->all(); 

作爲僅給出表格的最後一行的請求對象。 有什麼建議嗎?

@section('content') 
 
{!! Form::open(array('url' => 'madcat/update', 'method' => 'put', 'class'=>'form-horizontal')) !!} 
 
<input type="hidden" name="_token" value="{!! csrf_token() !!}"> 
 
    <div class="form-group">     
 
     <table class=" table table-condensed"> 
 
     <thead> 
 
\t   <tr> 
 
\t \t   <th>#</th> 
 
\t \t   <th>Field</th> 
 
\t \t   <th>Max</th> 
 
\t    <th>Min</th> 
 
\t   </tr> 
 
     </thead> 
 
     @foreach($records as $key => $value) 
 
      <tr> 
 
      \t <td>{!!Form::text('id',$value->id,['readonly'])!!}</td> 
 
      <td>{!!Form::checkbox('Field_check'.$value->id)!!}{!! Form::text('Field',$value->Field,['readonly'])!!}</td> 
 
      <td>{!!Form::checkbox('Max_check'.$value->id)!!}{!! Form::text('Max',$value->Max,['readonly'],array('size'=>'4'))!!}</td> 
 
      <td>{!!Form::checkbox('Min_check'.$value->id)!!}{!!Form::text('Min', $value->Min,['readonly'],array('size'=>'4'))!!}</td> 
 
      </tr> 
 
     @endforeach 
 
     </table> 
 
     <div class="col-md-6 col-md-offset-11"> 
 
     {!!Form::submit('Save', array('class'=>'btn btn-primary'))!!} 
 
     
 
\t \t </div> 
 
    </div> 
 
    {!!Form::close()!!} 
 
@endsection

這是HTML的代碼。在這裏,我將檢查所有行元素前面的複選框,以便僅更新其他表中的行。

+0

HTML表單可以幫助的代碼;) – Andre

回答

1

的問題是,所有的複選框在環路中相同的名稱。 你需要像這樣

{!!Form::checkbox('Field_check' . $key)!!} 
{!!Form::checkbox('Max_check' . $key)!!} 
{!!Form::checkbox('Min_check' . $key)!!} 

否則PHP不能告訴你,你編輯哪一行。

+0

複選框名稱更改。如何通過控制器中的請求對象獲取所有行? – Rajendra

+0

循環遍歷'Request :: all();'在結尾處提取數字。 – Andre

+0

所有表單值都在單個數組中。我們可以逐行獲取嗎? – Rajendra

0

在這裏,我得到了答案。其實錯誤是所有的表單元素在所有的表單元素的名稱

@section('content') 
 
{!! Form::open(array('url' => 'madcat/update', 'method' => 'put', 'class'=>'form-horizontal')) !!} 
 
<input type="hidden" name="_token" value="{!! csrf_token() !!}"> 
 
    <div class="form-group">     
 
     <table class=" table table-condensed"> 
 
     <thead> 
 
\t   <tr> 
 
\t \t   <th>#</th> 
 
\t \t   <th>Field</th> 
 
\t \t   <th>Max</th> 
 
\t    <th>Min</th> 
 
\t   </tr> 
 
     </thead> 
 
     @foreach($records as $key => $value) 
 
      <tr> 
 
      \t <td>{!!Form::text('id'.$value->id,$value->id,['readonly'])!!}</td> 
 
      <td>{!!Form::checkbox('Field_check'.$value->id)!!}{!! Form::text('Field'.$value->id,$value->Field,['readonly'])!!}</td> 
 
      <td>{!!Form::checkbox('Max_check'.$value->id)!!}{!! Form::text('Max'.$value->id,$value->Max,['readonly'],array('size'=>'4'))!!}</td> 
 
      <td>{!!Form::checkbox('Min_check'.$value->id)!!}{!!Form::text('Min'.$value->id, $value->Min,['readonly'],array('size'=>'4'))!!}</td> 
 
      </tr> 
 
     @endforeach 
 
     </table> 
 
     <div class="col-md-6 col-md-offset-11"> 
 
     {!!Form::submit('Save', array('class'=>'btn btn-primary'))!!} 
 
     
 
\t \t </div> 
 
    </div> 
 
    {!!Form::close()!!} 
 
@endsection

所做的更改命名和我在請求對象的所有值。

+0

...這是我的答案...不是你的。你只需要比我更多的ID – Andre

+1

選擇你的:) – Rajendra

相關問題