Kita lanjutkan membuat resource untuk data rating, dimana pada resource ini kita juga cukup menggunakan index page saja.
Langkah 1 - Membuat Resource Rating
Silahkan teman-teman jalankan perintah berikut ini di dalam terminal/CMD dan pastikan berada di dalam project Laravel-nya.
go
php artisan make:filament-resource Rating
Jika perintah di atas berhasil dijalankan, maka kita akan mendapatkan beberapa file, yang berada di dalam folder app/Filament/Resources.
lua
.
+-- RatingResource.php
+-- RatingResource
| +-- Pages
| | +-- CreateRating.php
| | +-- EditRating.php
| | +-- ListRatings.php
Langkah 2 - Mengubah Icon di Sidebar dan
Pertama, kita akan ubah icon ratings yang ada pada sidebar, silahkan teman-teman buka file app/Filament/Resources/RatingResource.php, kemudian cari kode berikut ini.
php
protected static ?string $navigationIcon = 'heroicon-o-rectangle-stack';
Dan ubahlah menjadi seperti berikut ini.
php
protected static ?string $navigationIcon = 'heroicon-o-sparkles';
Sekarang, silahkan teman-teman reload project-nya, maka icon di sidebar akan berubah.
Langkah 3 - Mengatur Urutan dan Grouping Menu
Disini kita akan mengatur grouping menu pada bagian sidebar dan juga mengatur urutan dari menu agar sesuai dengan yang kita inginkan.
Silahkan buka file app/Filament/Resources/RatingResource.php, kemudian tambahkan kode berikut ini di dalamnya, atau tepatnya dibawah $navigationIcon.
php
protected static ?string $navigationGroup = 'Ratings & Customers';
protected static ?string $navigationLabel = 'Ratings & Reviews';
protected static ?string $pluralLabel = 'Ratings & Reviews';
public static function getNavigationSort(): ?int
{
return 6;
}
Di atas, kita atur menu Ratings & Reviews di dalam sebuah group yang bernama Ratings & Customers dan kita berikan urutan nomor 6. Artinya akan diletakkan di bawah menu Transactions.
Langkah - 4 - Disable Create Data
Sekarang kita akan menamabhkan sebuah method yang mana method ini akan men-disable fitur create data di dalam resource Cart.
Silahkan buka file app/Filament/Resources/RatingResource.php, kemudian tambahkan kode berikut ini di dalamnya.
csharp
public static function canCreate(): bool
{
return false;
}
Kemudian ubah pada bagian kode ini.
php
public static function getPages(): array
{
return [
'index' => Pages\ListRatings::route('/'),
'create' => Pages\CreateRating::route('/create'),
'edit' => Pages\EditRating::route('/{record}/edit'),
];
}
Menjadi seperti berikut ini.
php
public static function getPages(): array
{
return [
'index' => Pages\ListRatings::route('/'),
];
}
Jadi di atas kita sisakan hanya untuk index page saja. Sekarang jika teman-teman reload project-nya dan klik pada menu Ratings & Reviews, maka hasilnya kurang lebih seperti berikut ini.
