Ofertas de Fin de Verano

Todos los planes rebajados hasta el 31 de agosto.

Ver planes
00 Días
00 Horas
00 Minutos
00 Segundos

Ofertas de Fin de Verano

Precios rebajados en todos los planes, para nuevas suscripciones y renovaciones. Solo hasta el 31 de agosto.
Ver planes
Saltar al contenido
Filament Rating Field
code

Detalles del ejemplo

Filament Rating Field

Campo de valoración interactivo para Filament v4 con soporte para estrellas, corazones y otros iconos.

Instalación

composer require cursosdesarrolloweb/filament-rating-field

Uso Rápido

Añade un campo de valoración en tu formulario:

use CursosDesarrolloWeb\RatingField\Forms\Components\RatingField;

RatingField::make('rating')
    ->label('Valoración del producto')

Campo de Formulario

use CursosDesarrolloWeb\RatingField\Forms\Components\RatingField;
use Filament\Support\Icons\Heroicon;

// Uso básico - 5 estrellas
RatingField::make('rating')
    ->label('Valoración del producto')

// Personalizar máximo
RatingField::make('priority')
    ->ratingMax(10)
    ->label('Prioridad')

// Diferentes iconos
RatingField::make('satisfaction')
    ->icon(Heroicon::Heart)
    ->color('danger')

// Permitir medios valores (3.5 estrellas)
RatingField::make('score')
    ->allowHalf()

// Con valor mostrado al lado
RatingField::make('average_rating')
    ->showValue() // Muestra "4.5 / 5" junto a las estrellas

// Tamaños: sm, md, lg, xl
RatingField::make('rating')
    ->size('lg')

// Con etiquetas descriptivas por valor
RatingField::make('experience')
    ->labels([
        1 => 'Muy malo',
        2 => 'Malo', 
        3 => 'Regular',
        4 => 'Bueno',
        5 => 'Excelente',
    ])
    ->showLabelOnHover()

// Requerido con validación
RatingField::make('rating')
    ->required()
    ->minValue(1)

Columna de Tabla

use CursosDesarrolloWeb\RatingField\Tables\Columns\RatingColumn;
use Filament\Support\Icons\Heroicon;

RatingColumn::make('rating')
    ->ratingMax(5)
    ->icon(Heroicon::Star)
    ->color('warning')

// Compacto para tablas densas
RatingColumn::make('rating')
    ->size('sm')

// Mostrar valor numérico junto a iconos
RatingColumn::make('rating')
    ->showValue()

Entry para Infolist

use CursosDesarrolloWeb\RatingField\Infolists\Components\RatingEntry;
use Filament\Support\Icons\Heroicon;

RatingEntry::make('rating')
    ->ratingMax(5)
    ->icon(Heroicon::Star)
    ->color('warning')
    ->size('lg')
    ->showValue()

Métodos Disponibles

Comunes a todos los componentes

Método Descripción Default
ratingMax(int) Número máximo de iconos 5
icon(Heroicon|string) Icono lleno Heroicon::Star
emptyIcon(Heroicon|string) Icono vacío Heroicon::OutlinedStar
color(string) Color del icono 'warning'
size(string) Tamaño: sm, md, lg, xl 'md'

Solo RatingField (formularios)

Método Descripción Default
allowHalf() Permitir valores decimales (.5) false
showValue() Mostrar valor numérico false
minValue(int) Valor mínimo requerido null
labels(array) Etiquetas por valor []
showLabelOnHover() Mostrar etiqueta al hover false

RatingColumn y RatingEntry

Método Descripción Default
showValue() Mostrar valor numérico false

Colores Disponibles

Color Descripción
primary Color primario del tema
secondary Color secundario
success Verde
warning Amarillo/Naranja (ideal para estrellas)
danger Rojo (ideal para corazones)
info Azul
gray Gris

Iconos Sugeridos

use Filament\Support\Icons\Heroicon;

Heroicon::Star          // Estrella (default)
Heroicon::Heart         // Corazón
Heroicon::HandThumbUp   // Pulgar arriba
Heroicon::Fire          // Fuego
Heroicon::Bolt          // Rayo

Requisitos

  • PHP 8.2+
  • Laravel 11+
  • Filament 4.x|5.x

Licencia

Propietario - Solo para suscriptores de CursosDesarrolloWeb.