src/Filters/Assembler.php
public function sort($element, $direction)
    {
        // simple sorting
        if (in_array($element, $sortable = app('scaffold.module')->sortable(), true)) {
            if ($table = app('scaffold.module')->model()->getTable()) {
                $element = "{$table}.{$element}";
            }

            $this->query->orderBy($element, $direction);
        }

        if (array_key_exists($element, $sortable) && is_callable($callback = $sortable[$element])) {
            $this->query = call_user_func_array($callback, [$this->query, $element, $direction]);
        }

        if (array_key_exists($element, $sortable) && is_string($handler = $sortable[$element])) {
            $handler = new $handler($this->query, $element, $direction);
            if (!$handler instanceof QueryBuilder || !method_exists($handler, 'build')) {
                throw new \Exception('Handler class must implement '.QueryBuilder::class.' contract');
            }
            $this->query = $handler->build();
        }

        return $this;
    }
public function sort($element, $direction)
    {
        // simple sorting
        if (in_array($element, $sortable = app('scaffold.module')->sortable(), true)) {
            if ($table = app('scaffold.module')->model()->getTable()) {
                $element = "{$table}.{$element}";
            }

            $this->query->orderBy($element, $direction);
        }

        if (array_key_exists($element, $sortable) && is_callable($callback = $sortable[$element])) {
            $this->query = call_user_func_array($callback, [$this->query, $element, $direction]);
        }

        if (array_key_exists($element, $sortable) && is_string($handler = $sortable[$element])) {
            $handler = new $handler($this->query, $element, $direction);
            if (!$handler instanceof QueryBuilder || !method_exists($handler, 'build')) {
                throw new \Exception('Handler class must implement '.QueryBuilder::class.' contract');
            }
            $this->query = $handler->build();
        }

        return $this;
    }
public function sort ( $ element , $ direction ) { // simple sorting if ( in_array ( $ element , $ sortable = app ( 'scaffold.module' ) -> sortable ( ) , true ) ) { if ( $ table = app ( 'scaffold.module' ) -> model ( ) -> getTable ( ) ) { $ element = "{$table}.{$element}" ; } $ this -> query -> orderBy ( $ element , $ direction ) ; } if ( array_key_exists ( $ element , $ sortable ) && is_callable ( $ callback = $ sortable [ $ element ] ) ) { $ this -> query = call_user_func_array ( $ callback , [ $ this -> query , $ element , $ direction ] ) ; } if ( array_key_exists ( $ element , $ sortable ) && is_string ( $ handler = $ sortable [ $ element ] ) ) { $ handler = new $ handler ( $ this -> query , $ element , $ direction ) ; if ( ! $ handler instanceof QueryBuilder || ! method_exists ( $ handler , 'build' ) ) { throw new \ Exception ( 'Handler class must implement ' . QueryBuilder :: class . ' contract' ) ; } $ this -> query = $ handler -> build ( ) ; } return $ this ; }
Apply ordering.

@param $element
@param $direction

@throws \Exception

@return $this
Apply ordering .