
Implementing Authorization for Creating Options
- Published: 15 Apr 2024 Updated: 04 May 2024
How to Apply Authorization on Create Option Action for Select Field

When using createOptionForm
for a select menu, you can customize the add action (+). One important thing is to add authorization to that action, for example, from a policy.
This will hide the add button next to the select menu when the user is not authorized to create, and the same goes for the edit action.
1Select::make('category_id')
2 //...
3 ->relationship(...)
4 ->createOptionForm(...)
5 ->createOptionAction(
6 fn(Action $action) => $action->hidden(
7 auth()->user()->cannot(
8 'create',
9 Category::class
10 )
11 )
12 ),

Related Tricks:
Usability: Knowing whether or not the record was saved.
Sometimes, when we need to test our application locally, we always have to fill forms manually. Let's take the Filament approach and achieve this with more accurate data.
toggle the visibility of an action when hover the component
Translating components can often be a repetitive task, Fortunately, there's a neat trick to automate this process, making your components instantly translatable.
Unrequire fields recursively when saving as draft