This simple package will help you add natural sorting to your Eloquent models if you use PostgreSQL.
Run:
composer require "adiafora/laravel-postgres-naturalsort"
Run migration on the package:
php artisan migrate
You can add a NaturalSortTrait
to any Eloquent model
Product extends Model
{
use \Adiafora\NaturalSort\NaturalSortTrait;
}
And in your client code you can write:
Product::orderByNatural('text')->get();
or reverse sorting
Product::orderByNaturalDesc('text')->get();
The MIT License (MIT). Please see License File for more information.