Для этого вы можете использовать global scopes
. Как только вы определите их, он будет автоматически применяться к запросам. Для этого мы можем переопределить метод boot
в модели.
Для выборки только активных пользователей:
use Illuminate\Database\Eloquent\Builder;
class User extends Model{
...
static function boot(){
parent::boot();
static::addGlobalScope('active', function (Builder $builder) {
$builder->where('is_active', true); // or 1 if you are using tinyint
});
}
}
Для выборки неактивных пользователей :
Чтобы выбрать активных пользователей, вы можете просто пропустить прикрепленную область.
User::withoutGlobalScope('active')->get();