zoukankan      html  css  js  c++  java
  • php手记之05-tp5软删除

    00-设计数据库的delete_time字段(不能设置为timestamp)

    `delete_time` int(10) UNSIGNED DEFAULT NULL

    01-需要在设置软删除的模型里设置

    定义好模型后,我们就可以使用:

    // 软删除
    User::destroy(1);
    // 真实删除
    User::destroy(1,true);
    
    $user = User::get(1);
    // 软删除
    $user->delete();
    // 真实删除
    $user->delete(true);

    默认情况下查询的数据不包含软删除数据,如果需要包含软删除的数据,可以使用下面的方式查询:

    User::withTrashed()->find();
    User::withTrashed()->select();

    如果仅仅需要查询软删除的数据,可以使用

    User::onlyTrashed()->find();
    User::onlyTrashed()->select();

    恢复被软删除的数据

    $user = User::onlyTrashed()->find(1);
    $user->restore();

    软删除仅对模型的删除方法有效,如果直接使用数据库的删除方法则无效,例如下面的方式无效(将不会执行任何操作)

    $user = new User;
    $user->where('id',1)->delete();
  • 相关阅读:
    Vue无缝滚动
    vue+Axios 实现路由拦截和登录拦截
    添加删除数组元素的方法
    日期时间相关
    Vue源码编译过程
    new关键字执行过程
    预解析
    echarts图表数据为空的时候不显示气泡
    arguments使用
    log4net介绍很全面
  • 原文地址:https://www.cnblogs.com/somethingWithiOS/p/11966566.html
Copyright © 2011-2022 走看看