ayzerobug/laravel-external-references

Easy link Laravel Models with external references for seamless integration and enhanced functionality.

v0.0.8 2024-09-08 02:19 UTC

This package is auto-updated.

Last update: 2024-11-08 02:40:26 UTC


README

Manage External References in Laravel

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

This package facilitates the seamless integration of your Laravel Models with external systems or services by managing external references or identifiers. It streamlines the process of associating your application's data with external datasets, such as payment processor IDs or user accounts. This enhancement enables the smooth integration of your application with diverse services and systems, thereby augmenting its capabilities and adaptability.

Installation

You can install the package via composer:

composer require ayzerobug/laravel-external-references

You can publish and run the migrations with:

php artisan vendor:publish --tag="external-references-migrations"
php artisan migrate

You can publish the config file with:

php artisan vendor:publish --tag="external-references-config"

Usage

Include the HasExternalReferences trait in your model:

namespace App\Models;

use Ayzerobug\LaravelExternalReferences\Traits\HasExternalReferences;

class Payment extends Model
{
    use HasExternalReferences;

    ...
}

Set Payment External Reference:

use App\Models\Payment;

$payment = Payment::find($id);
$idOnPaystack = "random-id";
$payment->setExternalReference($idOnPaystack, 'paystack');

Get the external Reference

use App\Models\Payment;

$payment = Payment::find($id);
$idOnPaystack = $payment->getExternalReference('paystack');

Get Payment with the external Reference

use App\Models\Payment;

$idOnPaystack = "random-id";
$payment = Payment::findByExternalReference($idOnPaystack, 'paystack');

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.