2016-02-01 30 views
1

我使用Laravel 5.1並且使用事件創建,更新,刪除。創建和更新工作正常,但刪除方法不會觸發。我在Model中進行了測試,創建了一個Observer類並將其放入EventServiceProvider中,但沒有任何解決方案。Laravel 5.1事件刪除和刪除不起火

我的代碼:

public static function boot() 
{ 
    parent::boot(); 
    static::deleting(function($user) 
    { 
     if(count($user->getImages()) >0){ 
      return false; 
     }else{ 
      return true; 
     } 
    }); 
} 

我的代碼刪除:

User::where('id','=',$id)->delete(); 

什麼建議嗎?感謝所有提前

+0

顯示代碼在您嘗試刪除 – mcklayin

+0

的代碼是用戶::在哪裏( '身份證', '=',$ ID) - >刪除() –

回答

1

嘗試使用User::where('id','=',$id)->first()->delete();它必須是工作,我在我的項目中有相同的錯誤。

對於多行:

User::where('id','=',$id)->get()->each(function($row){ 
     $row->delete(); 
    }); 
+0

更好地將'User :: find($ id) - > delete()' –

+0

Ohhhh正常工作!當你刪除更多的行? –

+0

以及如何返回消息?如果返回消息不能返回false ...謝謝Mike! –