欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

laravel之批量删除 有大用


 
0

laravel怎样实现通过复选框批量审核,批量删除功能?

 
 
 

3个回答

1

已采纳

首先需要先获取多选框选中的条目的id,如[1,3,5],然后,或者通过model或者直接sql,如:

DB::table('xx')->whereIn('primaryKey',[1,3,5])->update(['status'=>1]);
0

所谓的批量审核和批量删除,其实都是根据主键逐条完成

回复 phper_李sir

id in()是解析执行一次SQL,用多条单独的id = xxx则是解析执行多次SQL,性能显然有差异.

— eechen · 2月2日

展开评论
0

先复选 然后用js获取每个 的id值 ajax传到控制器 用 方法 WhereIn() 进行编辑或者修改



来自 https://segmentfault.com/q/1010000008211582
















表单

 

<center>
    <a href="{{URL('add')}}"><button style="width:80px;">+</button></a>
    <table border="1">
        <tr>
            <td><input type="checkbox" name=""></td>
            <td>名称</td>
            <td>价格</td>
            <td>操作</td>
        </tr>
        @foreach($users as $k => 
$v)
        <tr>
            <tr>
                <td><input type="checkbox" name="box" value="{{$v->g_id}}"></td>
                <td  pid="{{$v->g_id}}"><span class="name">{{$v->g_name}}</span></td>
                <td pid="{{$v->g_id}}"><span class="price">{{$v->g_price}}</span></td>
                <td><a href="del?g_id={{$v->g_id}}">删除</a></td>
            </tr>
        </tr>
        @endforeach
    </table>
    <button class="pl">批量删除</button>
</center>

js

<script src="style/js/jquery-1.7.2.min.js">
</script>
 <script> 
//批量删除  $(".pl").click(function(){ 
   var box = $("input[name='box']"); 
    length =box.length; //alert(length); 
     var str =""; 
    for(var i=0;i<length;i++)
    { 
       if(box[i].checked==true){ str =str+","+box[i].value; 
    } 
} 
str= str.substr(1) //alert(str)  location.href="del2?id="+str; }) 
</script>

控制器

//删除移除 public function del2(){  
   $g_id = input::get('id'); 
 $str = explode(",",$g_id); 
 foreach($str as $v){  
  DB::table('goods')->where('g_id',"=","$v")->delete(); 
 } 
 return redirect("index"); 
}

来自
http://blog.csdn.net/lmy_1/article/details/52748007


0

laravel怎样实现通过复选框批量审核,批量删除功能?

 
 
 

3个回答

1

已采纳

首先需要先获取多选框选中的条目的id,如[1,3,5],然后,或者通过model或者直接sql,如:

DB::table('xx')->whereIn('primaryKey',[1,3,5])->update(['status'=>1]);
0

所谓的批量审核和批量删除,其实都是根据主键逐条完成

回复 phper_李sir

id in()是解析执行一次SQL,用多条单独的id = xxx则是解析执行多次SQL,性能显然有差异.

— eechen · 2月2日

展开评论

普通分类: