Files
larablog/app/Filament/Resources/Articles/ArticleResource.php
T
gouki 3cec4c5e18
CI / PHPUnit (PHP 8.3) (push) Failing after 4s
CI / PHPUnit (PHP 8.2) (push) Failing after 1m9s
CI / Deploy (manual gate) (push) Skipped
wip: article AI polish, category SEO fields, cover generator, membership plan seeder
2026-09-07 18:48:37 +00:00

70 lines
1.7 KiB
PHP

<?php
declare(strict_types=1);
namespace App\Filament\Resources\Articles;
use App\Filament\Concerns\HasTranslatedLabels;
use App\Filament\Resources\Articles\Pages\CreateArticle;
use App\Filament\Resources\Articles\Pages\EditArticle;
use App\Filament\Resources\Articles\Pages\ListArticles;
use App\Filament\Resources\Articles\RelationManagers\CommentsRelationManager;
use App\Filament\Resources\Articles\Schemas\ArticleForm;
use App\Filament\Resources\Articles\Tables\ArticlesTable;
use App\Models\Article;
use BackedEnum;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Support\Icons\Heroicon;
use Filament\Tables\Table;
class ArticleResource extends Resource
{
use HasTranslatedLabels;
protected static ?string $model = Article::class;
protected static function navKey(): string
{
return 'articles';
}
protected static function modelKey(): string
{
return 'article';
}
protected static function groupKey(): string
{
return 'content';
}
protected static string|BackedEnum|null $navigationIcon = Heroicon::OutlinedDocumentText;
public static function form(Schema $schema): Schema
{
return ArticleForm::configure($schema);
}
public static function table(Table $table): Table
{
return ArticlesTable::configure($table);
}
public static function getRelations(): array
{
return [
CommentsRelationManager::class,
];
}
public static function getPages(): array
{
return [
'index' => ListArticles::route('/'),
'create' => CreateArticle::route('/create'),
'edit' => EditArticle::route('/{record}/edit'),
];
}
}