schema([ Forms\Components\Select::make('course_id') ->relationship('course', 'title') ->searchable() ->preload() ->required(), Forms\Components\TextInput::make('title') ->required() ->maxLength(255), Forms\Components\RichEditor::make('description') ->columnSpanFull(), Forms\Components\TextInput::make('order_index') ->numeric() ->default(0), ]); } public static function table(Table $table): Table { return $table ->columns([ Tables\Columns\TextColumn::make('title') ->searchable(), Tables\Columns\TextColumn::make('course.title') ->sortable() ->searchable(), Tables\Columns\TextColumn::make('order_index') ->numeric() ->sortable(), Tables\Columns\TextColumn::make('created_at') ->dateTime() ->sortable() ->toggleable(isToggledHiddenByDefault: true), ]) ->defaultSort('order_index', 'asc'); } public static function getRelations(): array { return [ // ]; } public static function getPages(): array { return [ 'index' => ListModules::route('/'), 'create' => CreateModule::route('/create'), 'edit' => EditModule::route('/{record}/edit'), ]; } public static function getRecordRouteBindingEloquentQuery(): Builder { return parent::getRecordRouteBindingEloquentQuery() ->withoutGlobalScopes([ SoftDeletingScope::class, ]); } }