-
app/Models/Scopes/SchoolScope.php
Open in GitHubuse App\Models\School; use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Scope; class SchoolScope implements Scope { public function apply(Builder $builder, Model $model): void { if ($school = School::current()) { $builder->where($model->getTable().'.school_id', $school->id); } } }
-
app/Traits/ScopedToSchool.php
Open in GitHubuse App\Models\Scopes\SchoolScope; trait ScopedToSchool { public static function bootScopedToSchool(): void { static::addGlobalScope(new SchoolScope()); } }
-
app/Models/Batch.php
Open in GitHubuse App\Traits\ScopedToSchool; class Batch extends Model { use ScopedToSchool; // ... }