laravel 软删除 所有方法
一、开启软删除
模型Models 实体类里 use SoftDeletes;
    class News extends Model    
    {
        public $table = 'news';
        protected $guarded = [];
        
        //开启软删除
        use SoftDeletes;
    }
二、表结构添加deleted_at 字段

三、如果不使用withTrashed(),已经进行了软删除的数据就查不出来,因为Laravel默认查询结果会自动剔除已被软删除的结果。
    private function getNews(){    
      //withTrashed 显示所有的,包括已经进行了软删除的
      $data = News::withTrashed()->get();
      return $data;
    }
四、onlyTrashed 只获取已删除的数据
    private function getNews(){    
       //onlyTrashed 只显示软删除的数据
       $data = News::onlyTrashed()->get();
       return $data;
    }
五、delete 或者 destroy 两种方法进行软删除
    private function softDeleteInquiry($id){    
      //delete 软删除
      News::where('id', '=', $id)->delete();
      //destory 软删除
      News::destroy($id);
    }
软删除后,数据库字段 deleted_at 会变更时间,代表已经软删除了

六、forceDelete 永久删除数据
    private function forceDelete($id){    
       News::withTrashed()->find($id)->forceDelete();
    }
七、restore 恢复软删除数据
    private function restoreDelete($id){ 
          //恢复一条     
       News::where('id', '=', $id)->restore();
       //全部恢复
       News::withTrashed()->restore();
    }