广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >PHPLaravel软删除的实现方法介绍
  • 715
分享到

PHPLaravel软删除的实现方法介绍

2024-04-02 19:04:59 715人浏览 八月长安
摘要

用Laravel 自带的 Eloquent ORM 来实现软删除。 首先在数据迁移文件中添加删除时间字段 ./database/migrations/2014_10_12_00000

用Laravel 自带的 Eloquent ORM 来实现软删除。

首先在数据迁移文件中添加删除时间字段

./database/migrations/2014_10_12_000000_create_users_table.PHP

<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
    
    public function up()
    {
        Schema::create('users', function (Blueprint $table) {
            $table->id();
            $table->string('name');
            $table->string('email')->unique();
            $table->timestamp('email_verified_at')->nullable();
            $table->string('passWord');
            $table->rememberToken();
            $table->timestamps();
            $table->softDeletes()->comment('删除时间');// 默认添加 deleted_at 字段
        });
    }
    
    public function down()
    {
        Schema::dropIfExists('users');
    }
};

执行 php artisan migrate 运行迁移文件

修改对应的数据模型

./app/Models/User.php

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class User extends Model
{
    use SoftDeletes;// 开启软删除
    protected $guarded = [];// 不可以注入的字段数据,使用create方法才有效
}

软删除方法

直接调用delete()方法或者destroy()方法即可

User::destroy($id);

这时候查询的数据自动添加过滤条件 deleted_at = NULL

恢复删除

User::onlyTrashed()->where('id', $id)->restore();

永久删除

直接删除数据

User::forceDeleted($id);

查询包含已删除的数据

使用 withTrashed()可以查询出包含已删除的数据

User::withTrashed()->get();

只查询已删除的数据

使用 onlyTrashed()可以只查询出已删除的数据

User::onlyTrashed()->get();

到此这篇关于PHP Laravel软删除的实现方法介绍的文章就介绍到这了,更多相关PHP Laravel软删除内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: PHPLaravel软删除的实现方法介绍

本文链接: https://www.lsjlt.com/news/166691.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • PHPLaravel软删除的实现方法介绍
    用Laravel 自带的 Eloquent ORM 来实现软删除。 首先在数据迁移文件中添加删除时间字段 ./database/migrations/2014_10_12_00000...
    99+
    2022-11-13
  • php session删除会话的方法介绍
    这篇文章主要讲解了“php  session删除会话的方法介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php  session删除...
    99+
    2022-10-19
  • Python中删除文件的几种方法介绍
    本篇内容主要讲解“Python中删除文件的几种方法介绍”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中删除文件的几种方法介绍”吧!前言很多时候开发者需要删除文件。可能是他错误地创建了...
    99+
    2023-06-07
  • 详解介绍删除Git历史的不同方法
    Git是一个非常流行的版本控制系统,它提供了很多方便的命令和功能来管理代码的各个版本。其中一个非常有用的功能是删除历史记录的能力。Git允许你删除某个特定的commit,它还有一些高级的选项来清理历史记录并保持你的代码库干净整洁。本文将介绍...
    99+
    2023-10-22
  • go语言删除字符串字符的方法介绍
    今天小编给大家分享的是go语言删除字符串字符的方法介绍,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的哦。   删除字符串的方法:1、用TrimSpace()...
    99+
    2023-07-04
  • github上怎么删除提交?两种方法介绍
    自从Github成为程序员们不可或缺的工具之一以来,它已经变得越来越受欢迎。然而,我们有时候会提交一些无意的文件或代码,或者是意外地将敏感信息提交到了公开的仓库。这使许多开发者感到尴尬和不安。幸运的是,Github允许我们删除这些提交以保护...
    99+
    2023-10-22
  • win10输入法怎么删除win10输入法怎么删除方式详细介绍
    win10输入法对比前边的好多个系统版本而言进步很大,且有许多十分有用的作用,总体应用下去也特别的流通,有着记忆力键入的作用,但是有些客户已经有了自身良好习惯的输入法了,要想删除内置的win10输入法,那样win10输入法怎么删除呢,今天就...
    99+
    2023-07-10
  • Win8系统删除隐藏的MSOCache文件夹的方法介绍
    MSOCache文件夹是用户在电脑上安装office所产生的,该文件夹所占内存比较大,且是支持删除的,想知道如何将该文件夹删除的朋友 Win8系统删除隐藏的MSOCache文件夹的方法介绍 1、首先需要下载一个注册表工具...
    99+
    2023-05-19
    MSOCache Win8
  • Linux中的LVM增加容量与删除卷的方法介绍
    这篇文章主要讲解了“Linux中的LVM增加容量与删除卷的方法介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux中的LVM增加容量与删除卷的方法介绍”吧!放大LV容量涉及到LVM管...
    99+
    2023-06-12
  • 怎么用php删除数组数据?三种方法介绍
    PHP 是一门非常强大的编程语言,被广泛用于 Web 开发和应用程序开发。在 PHP 中,数组是一种非常常见的数据类型。在使用数组时,有时需要删除数组中的某些数据。本文将介绍如何在 PHP 中删除数组数据。一、使用 unset() 函数删除...
    99+
    2023-05-14
    php php数组
  • PHP字符串前后字符或空格删除方法介绍
    目录rtrim()ltrim()trim()总结首先看一下这三个函数:rtrim() ltrim() trim(); rt...
    99+
    2022-11-13
    PHP字符串删除 PHP字符串
  • MySQL创建、删除以及更改用户的方法与权限介绍
    本篇内容介绍了“MySQL创建、删除以及更改用户的方法与权限介绍”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所...
    99+
    2022-10-18
  • SQLServer实现分页方法介绍
    一、创建测试表 CREATE TABLE [dbo].[Student]( [id] [int] NOT NULL, [name] [nvarchar](5...
    99+
    2022-11-13
  • DataTable的AcceptChanges()和RejectChanges()方法介绍并实现DataGridView数据增、删、改
    一、DataTable.AcceptChanges()方法 提交自上次调用AcceptChanges()方法以来对该表进行的所有更改。调用AcceptChanges()时,任何扔处于...
    99+
    2022-11-13
  • ubuntu删除软件源的方法是什么
    在Ubuntu中删除软件源的方法如下: 打开终端。 输入以下命令以备份软件源列表文件: sudo cp /etc/apt/s...
    99+
    2023-10-21
    ubuntu
  • BigDecimal的加减乘除计算方法介绍
    这篇文章主要介绍“BigDecimal的加减乘除计算方法介绍”,在日常操作中,相信很多人在BigDecimal的加减乘除计算方法介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”BigDecimal的加减乘除...
    99+
    2023-06-20
  • 简单的CSS清除浮动方法介绍
    本篇内容主要讲解“简单的CSS清除浮动方法介绍”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“简单的CSS清除浮动方法介绍”吧!清理浮动有很多种方式,像使用 br...
    99+
    2022-10-19
  • mysql实现批量删除的方法
    小编给大家分享一下mysql实现批量删除的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!mysql实现批量删除的方法:使用s...
    99+
    2022-10-18
  • python标记删除的实现方法
    这篇文章主要介绍了python标记删除的实现方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Python主要用来做什么Python主要应用于:1、Web开发;2、数据科学研...
    99+
    2023-06-14
  • javascript实现删除表格的方法
    这篇文章主要介绍javascript实现删除表格的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!javascript实现删除表格的方法:首先创建节点;然后移除table下面的子节点tr,删除表格的行,代码为【ta...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作