nowendwell / laravel-archivable
一个用于使 Eloquent 模型可存档的特性
v1.0.1
2019-04-05 16:03 UTC
Requires
- php: ^7.1
- illuminate/support: 5.7.*
Requires (Dev)
- orchestra/testbench: 3.7.*
- phpunit/phpunit: ^7.0
This package is auto-updated.
Last update: 2024-09-06 04:32:04 UTC
README
此包包含一个特性,用于使 Eloquent 模型可存档。这类似于 Laravel 伴随的 SoftDelete 特性。
一旦将此特性应用到模型上,你可以做以下操作
// to archive a User $user = User::find(1); $user->archive(); // to unarchive a User $user = User::withArchived()->find(1); $user->unarchive();
安装
你可以通过 composer 安装此包
composer require nowendwell/laravel-archivable
使模型可存档
要使模型可存档,将 Nowendwell\LaravelArchivable\Archivable
特性添加到希望存档的模型中
use Illuminate\Database\Eloquent\Model; use Nowendwell\LaravelArchivable\Archivable; class User extends Model { use Archivable; }
用法
此特性添加了一个全局查询范围,用于排除 archived_at
列中有值的任何模型。
存档
// to archive a User $user = User::find(1); $user->archive();
取消存档
// to unarchive a User $user = User::withArchived()->find(1); $user->unarchive();
检查存档状态
// to unarchive a User $user = User::withArchived()->find(1); var_dump( $user->archived() ); // bool true/false
查询范围
User::withArchived()->get(); // returns all users User::withOutArchived()->get(); // returns users that are not archived, same results as User::all() User::onlyArchived()->get() // returns only users that have a value in the archived_at column
变更日志
请参阅 变更日志 以获取更多关于最近更改的信息。
贡献
请参阅 贡献指南 获取详细信息。
安全
如果你发现任何安全相关的问题,请通过电子邮件 nowendwell@gmail.com 而不是使用问题跟踪器。
鸣谢
许可证
MIT 许可证 (MIT)。请参阅 许可证文件 以获取更多信息。
Laravel 包模板
此包是使用 Laravel 包模板 生成的。