2016-05-02 3 views
1

Я пытаюсь удалить данные из Databetable, используя Laravel 4.2 и Elequent ORM. Но я не могу удалить, вот мой код:Я пытаюсь удалить данные из таблицы, используя Laravel 4.2 и Elequent ORM, но он не работает

//delete incoming calls against this number 
\DB::table('incoming_call') 
    ->where("contact_num",'=',$data['mobile']) 
    ->delete(); 
//delete outgoing calls against this number 
\DB::table('outgoing_call') 
    ->where("contact_num",'=',$data['mobile']) 
    ->delete(); ` 

ответ

0

Это правильное использование, но это будет удалить только одну строку:

\DB::table('incoming_call') 
      ->where("contact_num",'=',$data['mobile']) 
      ->first(); 
      ->delete(); 


\DB::table('outgoing_call') 
      ->where("contact_num",'=',$data['mobile']) 
      ->first(); 
      ->delete(); 

Если вы хотите удалить несколько строк, которые можно сделать что-то вроде этого:

$coll = \DB::table('incoming_call') 
       ->where("contact_num",'=',$data['mobile']) 
       ->get(); 

\DB::table('incoming_call')->destroy($coll->keys()); 

Или просто использовать простой foreach:

$coll = \DB::table('incoming_call') 
      ->where("contact_num",'=',$data['mobile']) 
      ->get(); 

foreach($coll as $one){ 
    $one->delete(); 
} 
+0

Спасибо, он работает –

+0

Рад помочь.) –