Laravel 12.21.0 – A Smart Update for Cleaner Queries and Stricter Validation
August 3, 2025Laravel 12.21.0 introduces two game-changing features aimed at writing cleaner, more maintainable code. The update includes the new whereValueBetween() method and stricter validation rules for boolean and numeric fields.
1. whereValueBetween() : Elegant Range Filtering Across Two Columns
The new whereValueBetween() method allows you to check if a given value (such as user age or order amount) lies between the values of two different columns—without writing complex raw conditions. Here's how it works:
$users = DB::table('users')
->whereValueBetween('age', 'min_age', 'max_age')
->get();
Previously, you'd have to write something like this:
$users = DB::table('users')
->whereColumn('min_age', '<=', 'age')
->whereColumn('max_age', '>=', 'age')
->get();
With whereValueBetween() , your query is cleaner and more expressive, aligning better with the intent of your logic—this leads to easier debugging and more readable code.
2. Stricter Validation: Better Accuracy, Fewer Surprises
Laravel 12.21.0 also brings improvements to data validation by applying strict rules to 'accepted' and 'numeric' validations.
What's changed:
'accepted': Now only accepts valuestrue,'1', or1. Other values like'yes'or'on'will fail the validation.'numeric': Rejects non-numeric values such asnullor'abc', even if they are string representations.
This change improves input reliability and prevents invalid data from being mistakenly accepted—especially helpful when users interact with your front-end carelessly or maliciously.
3. Real-World Benefits
These enhancements provide you with:
- Less repetitive code in complex query logic
- More accurate validation and fewer bugs caused by bad input
- Cleaner code that aligns with SOLID principles and Clean Code standards
4. How to Start Using These Features
- Make sure your Laravel installation is updated to 12.21.0 or later.
- Use whereValueBetween() whenever you need to compare a value across two columns.
- Revisit your validation logic to benefit from the stricter checks in 'accepted' and 'numeric' .
💡 Pro Tip: Run your test suite after upgrading to ensure your application behaves exactly as expected.
Blog
Jul 30, 2025
Why Performance Is Non-Negotiable In today’s fast-paced world, no one has time to wait for a slow-loading website. On mobile, users abandon...
Jan 27, 2026
Introduction React Native is one of the most widely used frameworks for cross-platform mobile application development. However, iOS build time ha...
Jul 06, 2025
Using Web Components the Smart Way A lot of developers assume Web Components are meant to replace full SPA frameworks like React or Vue. But in rea...
May 23, 2026
The Journey of a Request Inside Laravel: The Core Concept and Complete Lifecycle A deep dive into how Laravel processes requests from start to...
Jun 30, 2025
📌 Building a Task Reminder App This guide shows how to set up a Laravel app using MongoDB to implement a task reminder system with authentication,...
Aug 17, 2025
Laravel Global Scopes: Automatic Query Filtering Eloquent Importance: Enforce consistent filters across all model queries (e.g., Soft Del...