Php 使用单选按钮更新表列

Php 使用单选按钮更新表列,php,laravel,laravel-5.2,Php,Laravel,Laravel 5.2,我正在尝试根据表数据中选定的单选按钮更新我的列。如果选中单选按钮,我想将isApprove列设置为true。但是我有相同的单选按钮名称,因此我可以将我的列isApprove更新为true 看法 我被困在这一部分不知道如何才能检查哪个被选中 路线 Route::get('/documents/pending', [ 'uses' => '\App\Http\Controllers\DocumentController@documentsSentForApproval', 'a

我正在尝试根据表数据中选定的单选按钮更新我的列。如果选中单选按钮,我想将
isApprove
列设置为true。但是我有相同的单选按钮名称,因此我可以将我的列
isApprove
更新为true

看法

我被困在这一部分不知道如何才能检查哪个被选中

路线

Route::get('/documents/pending',
[
    'uses' => '\App\Http\Controllers\DocumentController@documentsSentForApproval',
    'as' => 'document.pending',
]);

Route::post('/documents/pending/approve/{id}',
[
    'uses' => '\App\Http\Controllers\DocumentController@updateIsApprove',
    'as' => 'document.pending',
]);
更新

我遵循@SteD需要做的事情和@Doom5说的

视图:


您的名称相同,但值不同。然后您可以根据单选按钮的值进行更新。

您有相同的名称,但值不同。然后您可以根据单选按钮的值进行更新。

因此您需要将2个数据传递给控制器:

  • 文件ID
  • 批准/拒绝(从无线信箱)
  • 刀片

    您可以使用
    $request->status

    public function updateIsApprove(Request $request)
    {
        $document = Document::find($request->id);
    
        $document->isApprove = $request->status;
    
        $document->save();
    }
    

    因此,您需要将2个数据传递给控制器:

  • 文件ID
  • 批准/拒绝(从无线信箱)
  • 刀片

    您可以使用
    $request->status

    public function updateIsApprove(Request $request)
    {
        $document = Document::find($request->id);
    
        $document->isApprove = $request->status;
    
        $document->save();
    }
    

    我已经尝试过这个解决方案,但是它说
    MethodNotAllowedHttpException
    Try-and-see仍然得到相同的错误。我相信你的解决方案,我不应该在我的动作表单中已经传递id。是吗?哦,是的,你想从收音机里取回$id吗?我有点困惑。我需要将“批准”值作为
    1
    传递和“拒绝”值作为
    0
    传递的部分。我的解决方案是否正确?我在值中传递了id?我已经尝试了此解决方案,但它显示
    MethodNotAllowedHttpException
    Try and see仍然收到相同的错误。我相信你的解决方案,我不应该在我的动作表单中已经传递id。是吗?哦,是的,你想从收音机里取回$id吗?我有点困惑。我需要将“批准”值作为
    1
    传递和“拒绝”值作为
    0
    传递的部分。我的解决方案是否正确?我在值中传递了id?
    <form class = "form-inline" method = "post" action = "{{url('documents/pending/approve')}}">
    
    <input type="hidden" name="id" value="{{$list->id}}">
    
    <div class = "radio">
        <label><input type = "radio" name = "status" value="approve"> Approve</label>
    </div>
    
    <div class = "radio">
        <label><input type = "radio" name = "status" value="reject"> Reject</label>
    </div>
    
    </form>
    
    public function updateIsApprove(Request $request, $document, $id)
    {
        $document = Document::find($id);
    
        $document->isApprove = $request->status;
    
        $document->save();
    
        dd($request->all());
    }
    
    <form class = "form-inline" method = "post" action = "{{url('documents/pending/approve')}}">
        <input type="hidden" name="id" value="{{$list->id}}">
    
        <div class = "radio">
            <label><input type = "radio" name = "status" value="approve"> Approve</label>
        </div>
    
        <div class = "radio">
            <label><input type = "radio" name = "status" value="reject"> Reject</label>
        </div>
    
    </form>
    
    Route::post('/documents/pending/approve',
    [
        'uses' => '\App\Http\Controllers\DocumentController@updateIsApprove',
        'as' => 'document.pending',
     ]);
    
    public function updateIsApprove(Request $request)
    {
        $document = Document::find($request->id);
    
        $document->isApprove = $request->status;
    
        $document->save();
    }