lumite-studios / model-scopes
一个特性,用于添加特定的模型作用域。
v1.4
2022-07-12 08:43 UTC
Requires
- php: ^8.0
- illuminate/database: ^8.0|^9.0
README
一个特性,用于添加各种模型作用域。
安装
composer require lumite-studios/model-scopes
使用
所有作用域
use LumiteStudios\ModelScopes\ModelScopes;
WhereIsModelScope
use LumiteStudios\ModelScopes\WhereIsModelScope; class User extends Model { use WhereIsModelScope; }
$user = User::first(); $user = User::whereIsModel($user)->first();
WhereHasModelScope
use LumiteStudios\ModelScopes\WhereHasModelScope; class Post extends Model { use WhereHasModelScope; public function user() { return $this->belongsTo(User::class); } } class User extends Model { use WhereHasModelScope; public function posts() { return $this->hasMany(Post::class); } }
$user = User::first(); $posts = Post::whereHasModel('user', $user)->get(); $post = Post::first(); $user = User::whereHasModel('posts', $post)->first();