雪地逃亡 / eloquent-softdeletes
基于状态字段的软删除的Eloquent扩展
1.0.0
2024-07-21 12:51 UTC
Requires
- php: >=7.4
- illuminate/database: ^8.0|^9.0|^10.0|^11.0
- illuminate/events: ^8.0|^9.0|^10.0|^11.0
Requires (Dev)
- phpunit/phpunit: ^9.6
This package is auto-updated.
Last update: 2024-10-01 23:21:13 UTC
README
Eloquent Status SoftDeletes 是一个 Eloquent ORM 扩展,用于通过状态字段实现软删除功能。这种方法允许您通过设置特定的状态值来标记记录为已删除,从而在数据库中轻松管理“已删除”的记录。
功能
- 通过更新状态字段实现软删除记录。
- 自定义状态值以指示软删除。
- 无缝恢复软删除记录。
- 在查询中包含或排除软删除记录。
安装
要安装此包,请使用 Composer
composer require snowrunescape/eloquent-softdeletes
用法
在您的 Eloquent 模型中使用 SoftDeletes 特性。
示例
设置您的模型
要启用模型中的基于状态的软删除,请使用 SoftDeletes 特性并定义状态字段以及指示软删除的值。
use Illuminate\Database\Eloquent\Model; use SnowRunescape\SoftDeletes\SoftDeletes; class YourModel extends Model { use SoftDeletes; }
软删除记录
要软删除记录,请使用 delete 方法。这将更新状态字段为已删除的状态值。
$model->delete();
恢复记录
要恢复软删除的记录,请使用 restore 方法。这将更新状态字段为非删除状态值。
$model->restore();
查询软删除记录
要包含软删除记录在查询中,请使用 withTrashed 方法。
$allRecords = YourModel::withTrashed()->get();
要仅获取软删除记录,请使用 onlyTrashed 方法。
$deletedRecords = YourModel::onlyTrashed()->get();
要排除软删除记录从查询中,请使用 withoutTrashed 方法(这是默认行为)。
$activeRecords = YourModel::withoutTrashed()->get();
贡献
欢迎贡献!请提交一个拉取请求或打开一个问题来讨论您的想法。
许可证
eloquent-softdeletes 在 MIT 许可证(MIT)下提供。请参阅许可证文件以获取更多信息。