2017 © Pedro Peláez
 

library eloquent-custom

Saritasa customizations for Eloquent

image

saritasa/eloquent-custom

Saritasa customizations for Eloquent

  • Monday, March 12, 2018
  • by saritasa
  • Repository
  • 5 Watchers
  • 0 Stars
  • 1,819 Installations
  • PHP
  • 1 Dependents
  • 0 Suggesters
  • 0 Forks
  • 1 Open issues
  • 9 Versions
  • 20 % Grown

The README.md

Eloquent Extensions and Helpers

PHP CodeSniffer Release PHPv Downloads, (*1)

Custom Extensions for Eloquent, (*2)

See https://laravel.com/docs/eloquent, (*3)

Laravel 5.x/6.x

Install the saritasa/eloquent-custom package:, (*4)

$ composer require saritasa/eloquent-custom

Optionally (if you want to use default migrations): If you use Laravel 5.4 or less, or 5.5+ with package discovery disabled, add the PredefinedMigrationsServiceProvider service provider config/app.php:, (*5)

'providers' => array(
    // ...
    Saritasa\Database\Eloquent\PredefinedMigrationsServiceProvider::class,
)

then you can execute command:, (*6)

php artisan vendor:publish --provider=Saritasa\Database\Eloquent\PredefinedMigrationsServiceProvider --tag=migrations

Available classes

Entity

Extends Eloquent model, adds:, (*7)

  • Ability to set default field values for newly created inheritors

Example:, (*8)

class User extends Entity
{
    protected $defaults = [
        'role' => 'user'
    ]
}

now if you create new user it will have role 'user' by default, if you don't provide it explicitly:, (*9)


$user = new User(['name' => 'John Doe']); $this->assertEquals('user', $user->role); // true $admin = new User['name' => 'Mary', 'role' => 'admin'); $this->assertEquals('admin', $admin->role); // true

SortByName

Global scope for Eloquent models to add sorting by name by default, (*10)

Example:, (*11)

class SomeModel extends Model {
...
    protected static function boot()
    {
        parent::boot();
        static::addGlobalScope(new \Saritasa\Database\Eloquent\Scopes\SortByName());
    }
...
}

CamelCaseModel

Extended class Model for use camel case notation in DB., (*12)

Example:, (*13)

use Saritasa\Database\Eloquent\Models\CamelCaseModel;

class SomeModel extends CamelCaseModel
{
    //your code
}

CamelCaseForeignKeys trait

Use in any model class for get the default foreign key name for this model. By default, Eloquent gets foreign keys in snake case notation, this trait swap notation to camel case like carModelId instead of car_model_id. Use it if you already have foreign keys in camel case notation., (*14)

Example:, (*15)

use Saritasa\Database\Eloquent\Models\CamelCaseForeignKeys;

class MyModel extends SomeModelClass
{
    use CamelCaseForeignKeys;
}

Contributing

See CONTRIBUTING and Code of Conduct, if you want to make contribution (pull request) or just build and test project on your own., (*16)

Resources

The Versions

12/03 2018

dev-master

9999999-dev

Saritasa customizations for Eloquent

  Sources   Download

MIT

The Requires

 

The Development Requires

by Sergey Populov

laravel eloquent

01/02 2018

1.0.8

1.0.8.0

Saritasa customizations for Eloquent

  Sources   Download

MIT

The Requires

 

The Development Requires

by Sergey Populov

laravel eloquent

01/12 2017

1.0.7

1.0.7.0

Saritasa customizations for Eloquent

  Sources   Download

MIT

The Requires

 

The Development Requires

by Sergey Populov

laravel eloquent

26/09 2017

1.0.6

1.0.6.0

Saritasa customizations for Eloquent

  Sources   Download

MIT

The Requires

 

The Development Requires

by Sergey Populov

laravel eloquent

19/06 2017

1.0.5

1.0.5.0

Saritasa customizations for Eloquent

  Sources   Download

MIT

The Requires

 

The Development Requires

by Sergey Populov

laravel eloquent

14/06 2017

1.0.4

1.0.4.0

Saritasa customizations for Eloquent

  Sources   Download

MIT

The Requires

 

The Development Requires

by Sergey Populov

laravel eloquent

08/06 2017

1.0.3

1.0.3.0

Saritasa customizations for Eloquent

  Sources   Download

MIT

The Requires

 

The Development Requires

by Sergey Populov

laravel eloquent

12/05 2017

1.0.2

1.0.2.0

Saritasa customizations for Eloquent

  Sources   Download

MIT

The Requires

 

The Development Requires

by Sergey Populov

laravel eloquent

12/04 2017

1.0.0

1.0.0.0

Saritasa customizations for Eloquent

  Sources   Download

MIT

The Requires

 

The Development Requires

by Sergey Populov

laravel eloquent