Download the PHP package quadrubo/eloquent-autosort without Composer

On this page you can find all versions of the php package quadrubo/eloquent-autosort. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package eloquent-autosort

Eloquent Autosort

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

This package provides sortable behaviour for Eloquent models using a trait.

The package is based on spatie/eloquent-sortable. See here why this is not merged.

Features

Installation

This package can be installed through Composer.

You can publish the config file with:

This is the content of the file that will be published in config/eloquent-autosort.php

Usage

To add sortable behaviour to your model you must:

  1. Implement the Quadrubo\EloquentAutosort\Sortable interface.
  2. Use the trait Quadrubo\EloquentAutosort\SortableTrait.

Example

If you don't set a value $sortable['order_column_name'] the package will assume that your order column name will be named order_column.

If you don't set a value $sortable['sort_when_creating'] the package will automatically assign the highest order number to a new model.

If you don't set a value $sortable['sort_when_updating'] the package will automatically repair the order on update.

If you don't set a value $sortable['sort_when_deleting'] the package will automatically repair the order on delete.

If you don't set a value $sortable['groups'] groups will not be used.

Assuming that the db-table for MyModel is empty:

You can set a new order for all the records using the setNewOrder-method

Optionally you can pass the starting order number as the second argument.

To sort using a column other than the primary key, use the setNewOrderByCustomColumn-method.

As with setNewOrder, setNewOrderByCustomColumn will also accept an optional starting order argument.

You can also move a model up or down with these methods:

You can also move a model to the first or last position:

You can also move a model to a specific or the new position:

You can determine whether an element is first or last in order:

You can swap the order of two models:

Grouping

If your model/table has one or multiple grouping fields (usually a foreign key): id,user_id, title, order_column and you'd like the package to take it into considerations, you cann add the grouping fields to the $sortable['groups'] array.

This will restrict the calculations to the fields in the array.

Replacing the groups functionality

If you don't like the way the groups functionality is implemented, you can easily make your own.

  1. Overwrite the buildSortQuery method to change the behaviour of how the query is build.
  2. Overwrite the hasChangedGroupAttributes method to provide a way for the package to know when it should resort.

Testing

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

Thanks to the Spatie/Eloquent-Sortable Team for the base package functionality!

License

The MIT License (MIT). Please see License File for more information.


All versions of eloquent-autosort with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
spatie/laravel-package-tools Version ^1.14.0
illuminate/contracts Version ^9.0|^10.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package quadrubo/eloquent-autosort contains the following files

Loading the files please wait ....