Search code examples
phpmysqllaravellaravel-5soft-delete

Physical delete a model which is enabled softdelete in laravel5?


I am using SoftDeletes for a model in Laravel5.

But in some cases (Keeping history is not useful),I want to do physical delete (Removing row from table)instead of softDelete.

    class PaymentInvoices extends Model {

    use SoftDeletes;
}

Is there any method for forcing physical delete?


Solution

  • Of course there is. Use forceDelete method instead of just delete.

    Keep in mind, forceDelete is only available if you use the SoftDeletes trait.

    Example

    $instance->delete() //This is a soft delete
    $instance->forceDelete() // This is a 'hard' delete
    

    More info here (scroll down to Permanently Deleting Models)