Mahmoud Al-HabashOpen to new projects
  • WorkWork
  • ServicesServices
  • LabLab
  • WritingWriting
  • ContactContact
Amman--:--عربي
Writing/Laravel

Laravel Form Requests: Clean Controllers

Use Form Requests to keep validation logic out of controllers.

16 January 20261 min readLaravelاقرأ بالعربية

On this page

  1. Create Form Request
  2. Define Rules
  3. Use in Controller

Clean controllers with Form Requests:

Create Form Request

php artisan make:request StorePostRequest

Define Rules

php
class StorePostRequest extends FormRequest
{
    public function authorize(): bool
    {
        return $this->user()->can('create', Post::class);
    }

    public function rules(): array
    {
        return [
            'title' => 'required|max:255',
            'content' => 'required',
        ];
    }
}

Use in Controller

php
public function store(StorePostRequest $request)
{
    Post::create($request->validated());
}
All articles

Keep reading

  • Laravel Action Classes Pattern16 January 20261 min read
  • Laravel Action Classes: Single Responsibility16 January 20261 min read
  • Laravel API Rate Limiting16 January 20261 min read