Tinkerwell 4 is out now! See what's new or buy now.
Tinkerwell background image
Tinkerwell Logo Tinkerwell
Go back to Blog

Tinkerwell Shorts: Using the new whereExists method in Laravel 10

Laravel 10 makes writing whereExists queries in Laravel applications much easier. Previously, it the whereExists relation required a custom query within a closure but luckily, Laravel 10 solves this in a better way with a much higher developer UX.

In our licensing platform at beyondco.de, we manage licenses of multiple products. If we want to list all orders that include a Tinkerwell license, we would need to write an Eloquent like this:

Order::whereExists(function ($query) {
$query->from('licenses')->whereColumn('licenses.order_id', 'orders.id');
})->count();
)->count();

Laravel 10 makes that a lot easier by simply taking the License model and doing the heavy lifting on it's own:

Order::whereExists(
License::whereColumn('licenses.order_id', 'orders.id');
)->count();

This looks cleaner and is easier to understand – which is all we care about when we talk about developer UX.

Eric L. Barnes, Creator of Laravel News
“I use Tinkerwell all the time now. Love that app.”

Eric L. Barnes

Creator of Laravel News

Kenrick B, CTO
“I always keep it running so that I can quickly debug small parts of code. Since it knows my project, I 100% know if my code works or not, how rad is that?”
Kenrick B

CTO

Tinkerwell: The PHP Scratchpad

The must-have companion to your favorite IDE. Quickly iterate on PHP code within the context of your web application.

Buy now Learn more