如何在laravel中创建动态删除方法?

时间:2017-02-05 10:08:49

标签: laravel laravel-5.3

在codeigniter中我可以像这个代码一样设置动态删除的方法。我怎样才能为动态删除方法设置这个方法。谢谢

控制器功能

中的

public function Delete($id)
{
    if ($this->process_model->DynamicDelete($id, "interest_statement")) {
        //
    }
}
模型函数中的

public function DynamicDelete($id, $table)
{
    $this->db->delete($table, ['id' => $id]);

    return TRUE;
}

2 个答案:

答案 0 :(得分:1)

您可以使用以下路线:

Route::get('yourroute/{info}','Yourcontrolller@Yourmethod');

并在视图页面中使用此路线,其中来自请求获取:

{{ URL::to('/yourroute/'.$id.'&your_table')}}

最后你在你的控制器中写了一个函数

public function Yourmethod($info){
  $explode=explode('&',$info);
DB::table($explode[1])->where('id',$explode[0])->delete();    
        Session::flash('flash_message', 'Your Data Delete Successfully');
        return back();

}

谢谢

答案 1 :(得分:0)

在Laravel中,您可以使用Raw Query(数据库:查询生成器)

示例:

  • 表:用户

  • 条件:投票> 100

  

DB :: table('users') - > where('votes','>',100) - > delete();

在你的情况下:

  

公共函数DynamicDelete($ id,$ table){

addRow() {
  let indexForId = this.invoiceItem.rows.length + 1
  this.rows.push({
    // .....
    rowId: indexForId,
  })
}
     

}