Representación de un esquema en una vista Blade
Antes de continuar, asegúrese de que filament/schemas esté instalado en su proyecto. Puedes comprobarlo ejecutando:
composer show filament/schemas
Si no está instalado, consulte la guía de instalación y configure los componentes individuales según las instrucciones.
Configurando el componente Livewire
Primero, genere un nuevo componente Livewire:
php artisan make:livewire ViewProduct
Luego, renderice su componente Livewire en la página:
@livewire('view-product')
Alternativamente, puede utilizar un componente Livewire de página completa:
use App\Livewire\ViewProduct;
use Illuminate\Support\Facades\Route;
Route::get('products/{product}', ViewProduct::class);
Debe utilizar el rasgo InteractsWithSchemas e implementar la interfaz HasSchemas en su clase de componente Livewire:
use Filament\Schemas\Concerns\InteractsWithSchemas;
use Filament\Schemas\Contracts\HasSchemas;
use Livewire\Component;
class ViewProduct extends Component implements HasSchemas
{
use InteractsWithSchemas;
// ...
}
Agregar el esquema
A continuación, agregue un método al componente Livewire que acepte un objeto $schema, lo modifique y lo devuelva:
use Filament\Schemas\Schema;
public function productSchema(Schema $schema): Schema
{
return $schema
->components([
// ...
]);
}
Finalmente, renderice el esquema en la vista del componente Livewire:
{{ $this->productSchema }}
filament/schemas también incluye los siguientes paquetes:
filament/actionsfilament/support
Estos paquetes le permiten utilizar sus componentes dentro de los componentes de Livewire.
Por ejemplo, si su esquema usa Acciones, recuerde implementar la interfaz HasActions y usar el rasgo InteractsWithActions en su clase de componente Livewire.
Si está utilizando otros [componentes de filamento] (descripción general#componentes del paquete) en su esquema, asegúrese de instalar e integrar también el paquete correspondiente.