patinthehat/laravel-support
Laravel 5 support classes
20
1
| Install | |
|---|---|
composer require patinthehat/laravel-support |
|
| Latest Version: | v1.2.2 |
| PHP: | >=5.6.4 |
| License: | MIT |
| Last Updated: | Apr 2, 2017 |
| Links: | GitHub · Packagist |
Maintainer: patinthehat
LaravelSupport
Various support classes for Laravel 5+.
####Installation
Install with composer:
composer require patinthehat/laravel-support
Classes
#####ExtendedSeeder
ExtendedSeeder is an extended version of the Seeder class and provides easy foreign key check enable/disable and table truncating. It also allows for easy access to Faker.
######Methods
getFaker()- returns an instance of Faker\Factory (see Faker).init($tableName, $disableForeignKeyChecks = true, $deleteAllTableEntries = true)- call at the beginning ofrun().cleanup()- call at the end ofrun().
######Sample Usage:
use App\Support\ExtendedSeeder;
use App\User;
class UserTableSeeder extends ExtendedSeeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
//disable foreign key checks, delete all existing table entries
$this->init('users', true, true);
//seed the table
$text = $this->getFaker()->text();
$this->cleanup();
}
}
#####ExtendedMigration
ExtendedMigration is an extended version of the Migration class and provides easy foreign key creation/deletion.
######Methods
######Sample Usage:
use LaravelSupport\Database\ExtendedMigration;
class CreateForeignKeys extends ExtendedMigration
{
//define the FKs
protected $foreignKeyDefinitions = [
'info.author_id' => ['authors.id', 'cascade', 'cascade'],
'info.book_id' => ['books.id', null, null],
'table2.test_id' => 'tests.id',
'myinfo.publisher_id' => null, //creates FK on 'publishers.id'
];
//automatically create/delete FKs
protected $autoCreateDefinedKeys = true;
protected $autoDeleteDefinedKeys = true;
}
License
LaravelSupport is available under the MIT License.