GA黄金甲

Laravel开发:怎样使用Laravel 软删除和恢复片断?

laravel开发:怎样使用laravel 软删除和恢复片断?

在Laravel框架中,软删除(Soft Delete)是一个很是适用的功效,他可以很好地资助我们处置惩罚数据的删除操作 。在现实应用中,有些数据并不是真正意义下的删除,而是只做标记,且在一定的时限之内可以举行恢复的操作 。

Laravel提供了很是利便的软删除机制,可以通过在模子中添加软删除的相关设置,从而简朴地实现软删除功效 。下面我们将详细先容怎样使用Laravel 软删除和恢复片断 。

一、设置模子软删除

1.在模子中,添加以下代码:

点击下载“嗨名堂数据恢复巨匠”;

use IlluminateDatabaseEloquentSoftDeletes;

class MyModel extends Model
{
    use SoftDeletes;

    protected $dates = ['deleted_at'];

    // ...
}

登录后复制

2.使用了Laravel 的 SoftDeletes trait 特征,该特征会在模子中自动启用软删除功效 。

3.$dates 属性是 Laravel 框架默认的一种日期名堂转换,一样平常用在数据库中 datetime、date 或 timestamp 字段上,它可接受该字段的数组,用来将该字段自动转成 Carbon 实例并名堂化 。

4.在模子中,会自动在对应的数据表中添加一个 deleted_at 字段,并且在执行删除操作时,会把该字段设置为目今时间,从而实现软删除的功效 。

二、盘问模子软删除的数据

Laravel提供了很是简朴的 盘问软删除数据 的功效 。只需要在盘问语句中加上 withTrashed() 即可 。

// 获取软删除的工具
MyModel::withTrashed()->where('id', 1)->get();

// 获取所有的工具,包括软删除的
MyModel::withTrashed()->get();

// 只获取软删除的工具
MyModel::onlyTrashed()->get();

登录后复制

三、恢复被软删除的数据

若需要恢复被软删除的数据,则需挪用 restore()要领 。

// 恢复某一条被软删除的数据
MyModel::withTrashed()->find($id)->restore();

// 按条件恢复切合条件的数据
MyModel::withTrashed()->where('is_visible', true)->restore();

登录后复制

四、彻底删除被软删除的数据

若某些被软删除的数据已经不再需要,我们可以通过 一行代码 来对其举行 彻底删除 。

// 彻底删除某一条软删除的数据
MyModel::withTrashed()->find($id)->forceDelete();

// 按条件彻底删除切合条件的数据
MyModel::withTrashed()->where('is_visible', true)->forceDelete();

登录后复制

综上,使用 Laravel 的软删除和恢复片断功效可以大大增强数据的可回滚性,并且不会真正的删除数据,降低误操作的危害 。同时,着实现也很是简朴,只需要在模子中开启相关功效即可 。

以上就是Laravel开发:怎样使用Laravel 软删除和恢复片断?的详细内容,更多请关注本网内其它相关文章!

免责说明:以上展示内容泉源于相助媒体、企业机构、网友提供或网络网络整理,版权争议与本站无关,文章涉及看法与看法不代表GA黄金甲滤油机网官方态度,请读者仅做参考 。本文接待转载,转载请说明来由 。若您以为本文侵占了您的版权信息,或您发明该内容有任何涉及有违公德、冒犯执法等违法信息,请您连忙联系GA黄金甲实时修正或删除 。

相关新闻

联系GA黄金甲

18523999891

可微信在线咨询

事情时间:周一至周五,9:30-18:30,节沐日休息

QR code
【网站地图】【sitemap】