When you need to validate a field, but don't actually require it for anything e.g. 'accept terms and conditions', make use of the exclude rule. That way, the validated method won't return it...
class StoreRequest extends FormRequest{ public function rules(): array { return [ 'name' => 'required|string', 'email_address' => 'required|email', 'terms_and_conditions' => 'required|accepted|exclude', ]; }
class RegistrationController extends Controller{ public function store(StoreRequest $request) { $payload = $request->validated(); // only name and email $user = User::create($payload); Auth::login($user); return redirect()->route('dashboard'); }
Tip given by @mattkingshott
Enjoyed This Tip?
Get access to all premium tutorials, video and text courses, and exclusive Laravel resources. Join our community of 10,000+ developers.
Recent Courses
Laravel Coding with AI Agents: Cursor, Claude Code, Codex
5 lessons
1 h 01 min
Claude Code for Laravel Projects: Crash Course
8 lessons
48 min
NativePHP: Build Mobile App with Laravel
11 lessons
2 h 2 min read