Setelah berhasil membuat Resource untuk data categories, maka sekarang kita lanjutkan untuk data products.
Langkah 1 - Membuat Resource Product
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 Product
Jika perintah di atas berhasil dijalankan, maka kita akan mendapatkan beberapa file, yang berada di dalam folder app/Filament/Resources.
lua
.
+-- ProductResource.php
+-- ProductResource
| +-- Pages
| | +-- CreateProduct.php
| | +-- EditProduct.php
| | +-- ListProducts.php
Langkah 2 - Mengubah Icon di Sidebar dan
Pertama, kita akan ubah icon products yang ada pada sidebar, silahkan teman-teman buka file app/Filament/Resources/ProductResource.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-shopping-bag';
Sekarang, silahkan teman-teman reload project-nya, maka icon di sidebar akan berubah.
Langkah 3 - Mengubah Redirect URL
Secara default, saat kita melakukan proses create dan edit, maka Laravel Filament akan melakukan redirect ke halaman edit data. Disini kita akan ubah agar diredirect ke halaman index.
Pertama, kita akan menambahkan untuk halaman create. Silahkan teman-teman buka file app/Filament/Resources/ProductResource/Pages/CreateProduct.php, kemudian tambahkan method ini di dalamnya.
php
protected function getRedirectUrl(): string
{
return $this->getResource()::getUrl('index');
}
Kedua, kita akan menambahkan untuk halaman edit. Silahkan teman-teman buka file app/Filament/Resources/ProductResource/Pages/CreateProduct.php, kemudian tambahkan method ini di dalamnya.
php
protected function getRedirectUrl(): string
{
return $this->getResource()::getUrl('index');
}
Dari penambahan method di atas, kita atur agar saat setelah proses create dan edit akan diarahkan ke halaman index.
Langkah 4 - 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/ProductResource.php, kemudian tambahkan kode berikut ini di dalamnya, atau tepatnya dibawah $navigationIcon.
csharp
protected static ?string $navigationGroup = 'Master Data';
public static function getNavigationSort(): ?int
{
return 2;
}
Di atas, kita atur menu products di dalam sebuah group yang bernama Master Data dan kita berikan urutan nomor 2. Artinya akan diletakkan di bawah menu Categories.