LaravelPackages.net
Acme Inc.
Toggle sidebar
shomisha/unusual-relationships

This package offers a trait which provides your models with the ability to have relationships not included within standard Laravel installations.

1.041
8
1.0.1
About shomisha/unusual-relationships

shomisha/unusual-relationships is a Laravel package for this package offers a trait which provides your models with the ability to have relationships not included within standard laravel installations.. It currently has 8 GitHub stars and 1.041 downloads on Packagist (latest version 1.0.1). Install it with composer require shomisha/unusual-relationships. Discover more Laravel packages by shomisha or browse all Laravel packages to compare alternatives.

Last updated

Laravel Unusual Relationships

Latest Stable Version Software License Build Status StyleCI Scrutinizer Code Quality

This package is meant to provide its users with an API to accessing relationships that aren't included in Laravel's base installation. It achieves this effect by utilizing a trait which in turn instantiates custom relationship classes which rely on Laravel's relationship scaffolding.

class Employee extends Model {
    public function tasks() 
    {
        return $this->belongsToMany(Task::class);
    }
    
    public function boss() 
    {
        return $this->belongsTo(Boss::class);
    }
}

class Boss extends Model {
    use Shomisha\UnusualRelationships\HasUnusualRelationships;

    public function employees() 
    {
        return $this->hasMany(Employee::class);
    }
    
    public function tasks()
    {
        return $this->belongsToManyThrough(Task::class, Employee::class)
    }
}

The example above shows how you can use the belongsToManyThrough relationship to connect your model to its distantly related models. To learn more about this which methods work with which database structures, as well as how to use those methods, head over to our wiki pages.

Star History Chart