Laravel:创建一个影响数据库中列的按钮

时间:2019-06-11 12:11:46

标签: php laravel

是否可以创建一个按钮来更改表中的column值? 我的column表中有一个名为status的{​​{1}},我想知道是否可以通过我的{{1 }}可以从有效更改为无效

这是我的观点

movimentations

这是我的控制器

column

我尝试在自己的路线中创建一个函数,但是没有用。

2 个答案:

答案 0 :(得分:2)

我为activeinactive添加了选项按钮

<form action="/active-deactive" method="POST">
    @csrf
    <div class="input-group">
        <input type="hidden" class="form-control" name="v" value="{{$cooperado->id}}">
            <select required class="form-control" id="status"  name="status">              
                <option value="1">Active</option>  
                <option value="0">De-Active</option>  
            </select>
        </div>
        <button type="submit" class="btn btn-primary">
            <span>Confirm</span>
        </button>
    </div>
</form>

控制器

public function Confirm(Request $request)
{
    $id = $request->input('v');
    $status=$request->input('status');

    DB::table('tablename')
            ->where('id',$id)
            ->update(['status'=>$status]);

}

路线

Route::post('/active-deactive','YourController@Confirm')

答案 1 :(得分:1)

当然可以。您可以在单击该按钮时通过ajax发送请求:

$.ajax({
     type:'POST',
     url:'{{ route("NameOfYourRoute") }}',
     dataType:'json',
     data:{
         isActive = $('#theButtonID').val(),
         _token = '<?php echo csrf_token() ?>'
     },
     success:function(data){
         if (data.updated) {
             alert('Data Updated');
         }
     }
});

然后在控制器中,您可以具有一个函数,该函数接收按钮的值(活动或不活动)并更新数据库中的表:

public function toggleActivity(Request $request)
{
     $isActive = $request->get('isActive');
     $updated = Model::where(yourCriteria)->update(['isActive' => $isActive]);

     return view('YourView', compact('updated'));
}