silvertipsoftware / laravel-trait-pack
Laravel的一些常用特性集合
v1.0.0
2015-11-02 22:32 UTC
Requires (Dev)
- illuminate/database: 5.1.*
- illuminate/support: 5.1.*
- silvertipsoftware/dynamic-methods: 1.0.0
This package is auto-updated.
Last update: 2024-09-18 02:06:33 UTC
README
Laravel 5的一些常用特性的基础集合。
概述
大多数特性都是可配置的,并采用了在不污染使用类中的属性名的情况下存储这些配置参数的标准化方式。
特性配置参数存储在一个名为 $traitConfigs
的静态属性中。这是一个关联数组,键由特性定义。本包中使用的是特性的完全限定名,但这不是强制性的。
例如,
$traitConfig = [ 'SilvertipSoftware\LaravelTraitPack\HasActiveState' => [ 'field' => 'flag' ] ];
HasActiveState
向Laravel的Model
添加一个isActive
方法和一个作用域。底层的字段名是可配置的,默认为active
。
示例配置
$traitConfig = [ 'SilvertipSoftware\LaravelTraitPack\HasActiveState' => [ 'field' => 'flag' ] ];
UsesAlternateConnection
允许为每个类或类层次结构配置可配置的连接名称。特别适用于库。连接名称可以直接在类上定义,使用
$traitConfig = [ 'SilvertipSoftware\LaravelTraitPack\UsesAlternateConnection' => [ 'connection' => 'other_db' ] ]
或者在一个配置文件中,在database.alternateConnections
标签下。
'alternateConnections' => [
'FullyQualifiedClassname' => 'other_db',
'AnotherClassName' => 'some_other_connection'
]
类名将在层次结构中向上搜索,因此只需要在配置文件中指定基础类名。默认为null
,或默认连接名称。
ValidatesTrait
向模型添加一个isValid
方法,具有可配置的规则集。规则通过rules
特性配置参数指定。可以使用creation_rules
参数指定额外的规则。
示例
$traitConfigs = [ 'SilvertipSoftware\LaravelTraitPack\ValidatesTrait' => [ 'rules' => [ 'name' => [ 'required', 'string', 'max:20' ], 'age' => [ 'required', 'numeric', 'min:18' ] ], 'creation_rules' => [ 'password' => [ 'required', 'string' ], 'password_confirm' => [ 'required', 'string' ] ] ] ]
$model->errors
消息包被设置,包含任何验证错误。