La opción 2 es más rápida, ¿verdad? Eso es exactamente lo que hace --simple. En lugar de llevarte a otra página para crear o editar, abre una ventanita flotante (un modal). Todo pasa en el mismo lugar. Es como trabajar en el mismo escritorio sin levantarte.
¿Cuándo usar un resource simple?
Mira, piensa en esto: ¿tienes categorías? Solo tienen nombre y descripción. ¿Etiquetas? Solo un nombre. ¿Estados? Solo el nombre del estado. Para cosas tan simples, ¿realmente necesitas páginas completas separadas para crear, editar y listar?
💡 Aquí está el truco: si tus datos son simples (2-4 campos), usa --simple. Si son complejos (muchos campos, relaciones, validaciones), usa un resource normal.
La diferencia visual
Con un resource normal: haces clic en «Crear» → te lleva a otra página → llenas el formulario → guardas → te devuelve a la lista. Con --simple: haces clic en «Crear» → aparece una ventanita flotante → llenas → guardas → la ventanita desaparece y sigues en la lista.
El comando mágico
Es increíblemente simple. Solo agregas --simple al final del comando que ya conoces:
📝 ESTE ES EL CÓDIGO QUE VAMOS A APRENDER:
📍 Archivo: terminal (línea de comandos)
php artisan make:filament-resource Categoria --simple
🔍 ¿Qué hace esta línea?
php artisan → Le dices a Laravel que ejecute un comando. Es como hablarle directamente al sistema.
make:filament-resource → El comando para crear un nuevo resource de Filament. Ya lo usaste antes.
Categoria → El nombre del modelo. Filament creará un resource para gestionar categorías.
--simple → Aquí está la magia. Le dice a Filament: «Hazlo simple, con modales, no con páginas separadas».
📊 Resource normal vs Resource simple:
| Característica | Resource normal | Resource simple |
|---|---|---|
| Crear/Editar | Página nueva | Modal flotante |
| Archivos generados | 5+ archivos | 2 archivos |
| Velocidad | Cambia de página | Todo en uno |
| Ideal para | Datos complejos | Datos simples |
¿Qué archivos se crean?
Mira qué tan compacto es. En lugar de 5+ archivos, solo tienes 2:
app/Filament/Resources/Categorias/
├── CategoriaResource.php ← Todo aquí
└── Pages/
└── ManageCategorias.php ← Una sola página
💡 El formulario y la tabla van directamente en CategoriaResource.php, no en archivos separados. Menos archivos = menos confusión.
📁 ¿Quieres ver el código completo del resource simple? (opcional)
Fíjate que todo está en un solo archivo:
📍 Archivo: app/Filament/Resources/Categorias/CategoriaResource.php
<?php
namespace App\Filament\Resources\Categorias;
use App\Filament\Resources\Categorias\Pages\ManageCategorias;
use App\Models\Categoria;
use Filament\Actions\DeleteAction;
use Filament\Actions\DeleteBulkAction;
use Filament\Actions\EditAction;
use Filament\Forms\Components\TextInput;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Table;
class CategoriaResource extends Resource
{
protected static ?string $model = Categoria::class;
protected static ?string $recordTitleAttribute = 'nombre';
// 👇 El formulario va AQUÍ, no en archivo separado
public static function form(Schema $schema): Schema
{
return $schema->components([
TextInput::make('nombre')->required()->maxLength(255),
]);
}
// 👇 La tabla también va AQUÍ
public static function table(Table $table): Table
{
return $table
->columns([
TextColumn::make('nombre')->searchable(),
])
->recordActions([
EditAction::make(),
DeleteAction::make(),
]);
}
public static function getPages(): array
{
return [
'index' => ManageCategorias::route('/'),
];
}
}
¿Cuándo SÍ y cuándo NO usar –simple?
- ✅ USA –simple para: Categorías, etiquetas, estados, tipos, configuraciones simples (2-4 campos)
- ❌ NO uses –simple para: Productos con muchas relaciones, pedidos complejos, clientes con historial, datos que necesitan página de «ver detalles»
¡Pruébalo!
Ejecuta el comando, ve al panel, busca «Categorias». Haz clic en «Crear categoría». ¿Aparece una ventanita flotante en lugar de cambiar de página? ¡Eso es un modal! Crea una categoría de prueba y observa cómo todo pasa sin salir de la lista.
🎉 ¿Qué aprendimos hoy?
--simplecrea un resource con modales en lugar de páginas separadas- Todo ocurre en una sola pantalla: más rápido, más fluido
- Se generan solo 2 archivos en lugar de 5+
- El formulario y la tabla van directamente en el resource
- Ideal para datos simples: categorías, etiquetas, estados, configuraciones
- NO usar para datos complejos con muchas relaciones o que necesitan página de detalles
En la siguiente lección vamos a ver --generate, que es como magia: Filament lee tu base de datos y crea el formulario y la tabla automáticamente. ¡No te lo pierdas! 🚀