crear resource web de laravel filament

Created at: 2022-08-27 04:42:04 | Updated at: 2025-01-20 12:31:57

 //crear resource Web

php artisan make:filament-resource Web
 //editar WebResource

<?php

namespace App\Filament\Resources;

use App\Filament\Resources\WebResource\Pages;
use App\Filament\Resources\WebResource\RelationManagers;
use App\Models\Web;
use Filament\Forms;
use Filament\Resources\Form;
use Filament\Resources\Resource;
use Filament\Resources\Table;
use Filament\Tables;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\SoftDeletingScope;

class WebResource extends Resource
{
    protected static ?string $model = Web::class;

    protected static ?string $navigationIcon = 'heroicon-o-collection';

    public static function form(Form $form): Form
    {
        return $form
            ->schema([
				Forms\Components\FileUpload::make('img'),
                Forms\Components\TextInput::make('nom')
                    ->required()
                    ->maxLength(255),
                Forms\Components\TextInput::make('tipus')
                    ->maxLength(255),                
                
                Forms\Components\Select::make('framework')
                   ->options([
        'laravel' => 'laravel',
        'wordpress' => 'wordpress',
        'codeigniter' => 'codeigniter',
		'php' => 'php',
		]),
				Forms\Components\Select::make('css')
                     ->options([
        'bootstrap' => 'bootstrap',
        'tailwind' => 'tailwind',
        'uikit' => 'uikit',
		]),
		Forms\Components\Select::make('servidor')
                    ->options([
        'localhost' => 'localhost',
        'hostinger' => 'hostinger',
        'github' => 'github',
		'synology' => 'synology',
		]),
                Forms\Components\TextInput::make('url')
                    ->required()
                    ->maxLength(255),
                Forms\Components\TextInput::make('download')
                    ->maxLength(255),
            ]);
    }

    public static function table(Table $table): Table
    {
        return $table
            ->columns([
			    Tables\Columns\ImageColumn::make('img')->width(35),
                Tables\Columns\TextColumn::make('nom')->limit(10)
				->searchable()
                ->sortable(),
                Tables\Columns\TextColumn::make('tipus')->limit(10)
				->searchable()
                ->sortable(),                
                Tables\Columns\TextColumn::make('framework')->limit(10)
				->searchable()
                ->sortable(),
				Tables\Columns\TextColumn::make('css')->limit(10)
				->searchable()
                ->sortable(),
				Tables\Columns\TextColumn::make('servidor')->limit(10)
				->searchable()
                ->sortable(),
                Tables\Columns\TextColumn::make('url')->limit(10),
                Tables\Columns\TextColumn::make('download')->limit(10),
                Tables\Columns\TextColumn::make('updated_at')
                    ->dateTime(),
                
            ])
            ->filters([
                //
            ])
            ->actions([
                Tables\Actions\EditAction::make(),
            ])
            ->bulkActions([
                Tables\Actions\DeleteBulkAction::make(),
            ]);
    }
    
    public static function getRelations(): array
    {
        return [
            //
        ];
    }
    
    public static function getPages(): array
    {
        return [
            'index' => Pages\ListWebs::route('/'),
            'create' => Pages\CreateWeb::route('/create'),
            'edit' => Pages\EditWeb::route('/{record}/edit'),
        ];
    }    
}

No valid image directory found or the category is not valid for the gallery.

Back to Posts
crear resource web de laravel filament

Title

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.