Herramientas de usuario

Herramientas del sitio


informatica:programacion:php:frameworks:laravel:filament

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
informatica:programacion:php:frameworks:laravel:filament [2025/04/02 12:10] – [Formularios] tempwininformatica:programacion:php:frameworks:laravel:filament [2025/04/07 15:30] (actual) – [En producción] tempwin
Línea 1: Línea 1:
 ====== Filament ====== ====== Filament ======
  
-Filament es un framework de código abierto para [[informatica:programacion:php:frameworks:laravel|Laravel]] que permite construir paneles de administración modernos y elegantes de forma rápida. Está construido sobre tecnologías como Livewire (para componentes dinámicos), Alpine.js (para interactividad) y Tailwind CSS (para estilos). Es ideal para crear interfaces de administración (CRUDs, dashboards, etc.) sin necesidad de escribir código frontend complejo.+Filament es un framework de código abierto para [[informatica:programacion:php:frameworks:laravel|Laravel]] que permite construir paneles de administración modernos y elegantes de forma rápida. Es ideal para crear interfaces de administración (CRUDs, dashboards, etc.) sin necesidad de escribir código frontend complejo.
  
   * [[https://filamentphp.com/|Sitio oficial]]   * [[https://filamentphp.com/|Sitio oficial]]
  
 +===== Tecnologías principales =====
 +
 +Filament se construye sobre varias tecnologías:
 +
 +  * **Laravel**: framwork PHP que Filament utiliza para aprovechar características como Eloquent ORM, migraciones, autenticación, y la estructura MVC de Laravel.
 +  * **Livewire**: para crear componentes dinámicos sin escribir JavaScript puro.
 +  * **Alpine.js**: proporciona interactividad ligera en el frontend (menús desplegables, modales, etc.).
 +  * **Tailwind CSS**: Framework de estilos utilizado para diseñar todos los componentes.
 +  * **Blade**: los componentes de Filament están construidos con plantillas de Blade, lo que permite extenderlos fácilmente.
 +  * **Heroicons**: biblioteca de iconos utilizada en los componentes de la interfaz (botones, menús, etc.).
 ===== Instalación ===== ===== Instalación =====
  
Línea 52: Línea 62:
   * **Spatie Laravel Health**: revisión de la salud de nuestra aplicación.   * **Spatie Laravel Health**: revisión de la salud de nuestra aplicación.
   * **Jobs monitor**: monitoriza las colas desde un panel.   * **Jobs monitor**: monitoriza las colas desde un panel.
 +
 +===== Error 403 en producción =====
 +
 +Al indicar que el proyecto se ejecutará en producción mediante el fichero ''.env'':
 +
 +<code>
 +APP_ENV=production
 +</code>
 +
 +Filament devolverá un error 403 al iniciar sesión en el panel de administración. Es el comportamiento esperado. Si queremos cambiarlo, hay que modificar el modelo ''app/Models/User.php'':
 +
 +<code php>
 +<?php
 + 
 +namespace App\Models;
 + 
 +use Filament\Models\Contracts\FilamentUser;
 +use Filament\Panel;
 +use Illuminate\Foundation\Auth\User as Authenticatable;
 + 
 +class User extends Authenticatable implements FilamentUser
 +{
 +    // ...
 + 
 +    public function canAccessPanel(Panel $panel): bool
 +    {
 +        return str_ends_with($this->email, '@yourdomain.com') && $this->hasVerifiedEmail();
 +    }
 +}
 +</code>
 +
 +En el ejemplo anterior, solo permitiríamos el acceso al panel a las cuentas cuyo dominio fuesen ''yourdomain.com'' y tuvieran el e-mail verificado.
 +
 +  * [[https://filamentphp.com/content/danharrin-panel-403-in-production|Why is my panel showing a 403 error in production?]]
 +
 ===== Recursos ===== ===== Recursos =====
  
   * [[https://heroicons.com/|Heroicons]]: iconos SVG de los creadores de Tailwind CSS.   * [[https://heroicons.com/|Heroicons]]: iconos SVG de los creadores de Tailwind CSS.
   * [[https://filamentphp.com/plugins|Filament plugins]]   * [[https://filamentphp.com/plugins|Filament plugins]]
informatica/programacion/php/frameworks/laravel/filament.1743588656.txt.gz · Última modificación: por tempwin