Download the PHP package mr-punyapal/laravel-extended-relationships without Composer

On this page you can find all versions of the php package mr-punyapal/laravel-extended-relationships. 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 laravel-extended-relationships

laravel-extended-relationships

Latest Version on Packagist GitHub Tests Action Status Total Downloads

What is a need of extended relationships?

The laravel-extended-relationships package provides additional, more efficient relationship methods for Laravel Eloquent models. The package offers several useful features such as reducing the number of database queries, improving performance, and minimizing duplicate code.

I faced issue and made my own relationships then realize if I can use packages from open source then I can make one too and made this package.

Installation

You can install the package via composer:

Usage

First, include the HasExtendedRelationships trait in your model:

Next, define the BelongsToManyKeys relationship with the belongsToManyKeys method:

This method takes three arguments:

Then, you can fetch data from the auditors relationship like so:

This allows you to define multiple relationships with just one method, and only a single query is fired in the database for all the relationships.

Inverse relationship.

To retrieve the audited posts of a user, you can use the audited relationship. Here's an example:

This allows you to define multiple relationships between models with a single method call, simplifying your code and reducing the number of queries executed.

HasManyArrayColumn

If you have a column companies in your users table which stores an array of local keys like [7, 71] or ["7", "71"], you can use the following relationship:

When fetching data, you can retrieve the related companies with:

This allows you to easily retrieve related records with an array of local keys, which can be useful in certain scenarios.

Inverse Relationship for HasManyArrayColumn

The BelongsToArrayColumn method allows you to define a relationship between a model and an array column on another model. if you have ["7", "71"] in array column and int 7 or 71 at your foreign-key then pass $isString flag as true to get expected results.

Here's an example:

With this relationship defined, you can fetch related company founders with the following code:

This will provide you with data from the users table where the companies array column contains the value 71.

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

License

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


All versions of laravel-extended-relationships with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1|^8.2|^8.3
illuminate/contracts Version ^10.10|^11.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 mr-punyapal/laravel-extended-relationships contains the following files

Loading the files please wait ....