39 lines
1.0 KiB
PHP
39 lines
1.0 KiB
PHP
<?php
|
|
|
|
namespace App\Facades;
|
|
|
|
use App\Database\Blueprint;
|
|
use Illuminate\Database\Schema\Builder;
|
|
use Illuminate\Support\Facades\Schema as BaseSchema;
|
|
|
|
class Schema extends BaseSchema
|
|
{
|
|
/**
|
|
* Get a schema builder instance for a connection.
|
|
*/
|
|
public static function connection($name)
|
|
{
|
|
/** @var Builder $builder */
|
|
$builder = static::$app['db']->connection($name)->getSchemaBuilder();
|
|
$builder->blueprintResolver(static function ($table, $callback) {
|
|
return new Blueprint($table, $callback);
|
|
});
|
|
|
|
return $builder;
|
|
}
|
|
|
|
/**
|
|
* Get a schema builder instance for the default connection.
|
|
*/
|
|
protected static function getFacadeAccessor(): Builder
|
|
{
|
|
/** @var Builder $builder */
|
|
$builder = static::$app['db']->connection()->getSchemaBuilder();
|
|
$builder->blueprintResolver(static function ($table, $callback) {
|
|
return new Blueprint($table, $callback);
|
|
});
|
|
|
|
return $builder;
|
|
}
|
|
}
|