melihovv / eloquent-presence-verifier
优雅的存活性验证器实现
1.1.1
2020-03-05 21:38 UTC
Requires
- php: >=7.2
- illuminate/database: ^6.0|^7.0
- illuminate/support: ^6.0|^7.0
- illuminate/validation: ^6.0|^7.0
Requires (Dev)
- mockery/mockery: ^1.3
- phpunit/phpunit: ^8.4|^9.0
README
通过优雅的模型类进行存活性验证,而不是使用数据库外观。
动机
这个优秀的数据库查询缓存包 spiritix/lada-cache 要求所有数据库查询都应该从具有 LadaCacheTrait
的 Eloquent 模型子类中运行。但如果你使用以下验证规则之一 exists:users,id
或 unique:users,email
,Laravel 将通过 DB
外观运行查询。
安装
通过 composer 安装
composer require melihovv/eloquent-presence-verifier
发布配置文件
php artisan vendor:publish --provider="Melihovv\EloquentPresenceVerifier\ServiceProvider" --tag="config"
在此配置中,您可以指定所有查询将通过该自定义模型发送。对于 spiritix/lada-cache
用户
- 创建
App\Models\TempModel
<?php namespace App\Models; use Illuminate\Database\Eloquent\Model; class TempModel extends Model { use \Spiritix\LadaCache\Database\LadaCacheTrait; }
- 在
config/eloquent-presence-verifier
中指定创建的模型
return [ 'model' => \App\Models\TempModel::class, ];
用法
您不需要做任何事情。所有操作都在此包的服务提供者中完成:将 EloquentPresenceVerifier 设置为默认的存活性验证器,而不是 DatabasePresenceVerifier。
安全性
如果您发现任何与安全性相关的问题,请通过电子邮件 amelihovv@ya.ru 联系,而不是使用问题跟踪器。
致谢
此包是通过 melihovv/laravel-package-generator 的帮助启动的。