filament/infolists
Build rich, read-only detail views in Filament with Infolists. Compose fields, sections, and layouts to display record data in panels, resources, and pages, with configurable formatting, visibility rules, and responsive components for admin UIs.
import AutoScreenshot from "@components/AutoScreenshot.astro" import UtilityInjection from "@components/UtilityInjection.astro"
The key-value entry allows you to render key-value pairs of data, from a one-dimensional JSON object / PHP array.
use Filament\Infolists\Components\KeyValueEntry;
KeyValueEntry::make('meta')
For example, the state of this entry might be represented as:
[
'description' => 'Filament is a collection of Laravel packages',
'og:type' => 'website',
'og:site_name' => 'Filament',
]
If you're saving the data in Eloquent, you should be sure to add an array cast to the model property:
use Illuminate\Database\Eloquent\Model;
class Post extends Model
{
/**
* [@return](https://github.com/return) array<string, string>
*/
protected function casts(): array
{
return [
'meta' => 'array',
];
}
// ...
}
You may customize the label for the key column using the keyLabel() method:
use Filament\Infolists\Components\KeyValueEntry;
KeyValueEntry::make('meta')
->keyLabel('Property name')
<UtilityInjection set="infolistEntries" version="5.x">As well as allowing a static value, the keyLabel() method also accepts a function to dynamically calculate it. You can inject various utilities into the function as parameters.</UtilityInjection>
You may customize the label for the value column using the valueLabel() method:
use Filament\Infolists\Components\KeyValueEntry;
KeyValueEntry::make('meta')
->valueLabel('Property value')
<UtilityInjection set="infolistEntries" version="5.x">As well as allowing a static value, the valueLabel() method also accepts a function to dynamically calculate it. You can inject various utilities into the function as parameters.</UtilityInjection>
How can I help you explore Laravel packages today?