Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

Users.php 1.1KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. namespace App\Filament\Pages\Widgets;
  3. use App\Models\User;
  4. use Closure;
  5. use Filament\Tables;
  6. use Filament\Widgets\TableWidget as PageWidget;
  7. use Illuminate\Contracts\Support\Htmlable;
  8. use Illuminate\Database\Eloquent\Builder;
  9. use Illuminate\Database\Eloquent\Relations\Relation;
  10. class Users extends PageWidget
  11. {
  12. protected int|string|array $columnSpan = [
  13. 'md' => 2,
  14. 'xl' => 3,
  15. ];
  16. protected function getTableQuery(): Builder|Relation
  17. {
  18. return User::query();
  19. }
  20. protected function getTableHeading(): string|Htmlable|Closure|null
  21. {
  22. return null;
  23. }
  24. protected function getTableColumns(): array
  25. {
  26. return [
  27. Tables\Columns\ViewColumn::make('name')
  28. ->view('filament.components.users.avatar-column')
  29. ->label('Name')
  30. ->sortable()
  31. ->grow(false),
  32. Tables\Columns\TextColumn::make('owned_companies')
  33. ->label('Companies')
  34. ->weight('semibold')
  35. ->getStateUsing(static fn ($record) => $record->ownedCompanies->count()),
  36. ];
  37. }
  38. }