Skip to content

PHP trait to use composite keys in your Laravel Eloquent models and does not fail on possible missing column.

Notifications You must be signed in to change notification settings

rvzug/laravel-possible-composite-key

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 

Repository files navigation

laravel-possible-composite-key

PHP trait to use composite keys in your Laravel Eloquent models and does not fail on possible missing column.

Installation:

composer require rvzug/laravel-possible-composite-key

Usage:

<?php

use Rvzug\CanHasCompositeKey;
use Illuminate\Database\Eloquent\Model;

class MyModel extend Model {
    use CanHasCompositeKey;
    
    protected $primaryKey = ['one', 'two', 'three'];
    public $incrementing = false;
    
}

In your migrations / database it's now possible to add Nullable to 'one', 'two', 'three'. Assuming that at least one of the other is filled with a near-unique value. For example an ArticleCode or Gtin value. In my usages I use keys: 'ArticleCode', 'EanCode', 'Supplier', where code and ean could be empty. The combination of Supplier and one of the codes is reasonably unique.

About

PHP trait to use composite keys in your Laravel Eloquent models and does not fail on possible missing column.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages