Laravel Community Tools by Tighten
Laravel Nova icon Nova Packages
S

Sort relations

Installation Instructions

Install via composer

$ composer require lifeonscreen/nova-sort-relations

Usage

Include LifeOnScreen\SortRelations\SortRelations trait to your class. Define base by overriding indexQuery. Define sortable columns in $sortRelations array.


...
use LifeOnScreen\SortRelations\SortRelations;
...

class Product extends Resource
{
    public static $sortRelations = [
        // overriding id with product.id (this prevent ambiguous id, if you select multiple ids)
        'id'               => 'product.id',
        // overriding user relation sorting
        'user'         => [
            // sorting multiple columns
            'users.name',
            'users.surname',
        ],
        // overriding company relation sorting
        'company'          => 'company.name',
    ];

    public static function indexQuery(NovaRequest $request, $query)
    {
        // You can modify your base query here.
        return $query;
    }
}

Readme

LifeOnScreen/nova-sort-relations

This package improves support for sorting relations in Laravel Nova.

Installation

Install via composer

$ composer require lifeonscreen/nova-sort-relations

Usage

Include LifeOnScreen\SortRelations\SortRelations trait to your class. Define base by overriding indexQuery. Define sortable columns in $sortRelations array.

...
use LifeOnScreen\SortRelations\SortRelations;
...

class Product extends Resource
{
    public static $sortRelations = [
        // overriding id with product.id (this prevent ambiguous id, if you select multiple ids)
        'id'               => 'product.id',
        // overriding user relation sorting
        'user'         => [
            // sorting multiple columns
            'users.name',
            'users.surname',
        ],
        // overriding company relation sorting
        'company'          => 'company.name',
    ];
    
    public static function indexQuery(NovaRequest $request, $query)
    {
        // You can modify your base query here.
        return $query;
    }
}

Security

If you discover any security-related issues, please email the author instead of using the issue tracker.

Credits

License

MIT license. Please see the license file for more information.

Back to Top
Added 7 years ago
Last updated 6 Years Ago
Version v0.0.2
Composer
lifeonscreen/nova-sort-relations
GitHub stars 20
Packagist downloads 81,404

Favorites

9 users favorited

Rating

2.50
(out of 5)
★★★★★
★★★★
★★★
★★
2 ratings

Contributors

Brought to you by Tighten

Issues/Feature Requests Stats Package Ideas