PHP Class Mojopollo\Schema\MakeMigrationJson

Afficher le fichier Open project: mojopollo/laravel-json-schema Class Usage Examples

Protected Properties

Свойство Type Description
$blueprint Illuminate\Database\Schema\Blueprint The Blueprint instance.
$filesystem Illuminate\Filesystem\Filesystem The Filesystem instance.

Méthodes publiques

Méthode Description
__construct ( ) New instance
getColumnIndexes ( ) : array Get an array of valid column indexes
getColumnModifiers ( ) : array Get an array of column modifiers from the MySqlGrammar::modifiers property
isValidColumnType ( string $type ) : boolean Checks if supplied string argument is a valid column type
jsonFileToArray ( string $path ) : array Grabs a json file and returns a array
parseProperty ( string $type ) : string Parses the property without the parameters in this method, "string" and "string(50)" should both return as "string"
parseSchema ( array $data, array $only = [] ) : array Parses the schema from the json array into a readable format laravel generators extended understand
setMigrationName ( string $tableName ) : string Creates a migration name from a table name or keeps it intact if a migration name has already been set
validateSchema ( array $data ) : array Validates the schema from the json array and returns an error of syntax errors if any are found

Method Details

__construct() public méthode

New instance
public __construct ( )

getColumnIndexes() public méthode

Get an array of valid column indexes
See also: https://laravel.com/docs/5.2/migrations#creating-indexes
See also: https://github.com/laracasts/Laravel-5-Generators-Extended#user-content-foreign-constraints
public getColumnIndexes ( ) : array
Résultat array list of the possible column indexes

getColumnModifiers() public méthode

Get an array of column modifiers from the MySqlGrammar::modifiers property
public getColumnModifiers ( ) : array
Résultat array Example: unsigned, charset, collate, ...

isValidColumnType() public méthode

Checks if supplied string argument is a valid column type
See also: https://laravel.com/docs/5.2/migrations#creating-columns
public isValidColumnType ( string $type ) : boolean
$type string Example: string, integer, text, timestamp, etc
Résultat boolean Returns true if valid, otherwise false

jsonFileToArray() public méthode

Grabs a json file and returns a array
public jsonFileToArray ( string $path ) : array
$path string The path to the json file
Résultat array The parsed array

parseProperty() public méthode

Parses the property without the parameters in this method, "string" and "string(50)" should both return as "string"
public parseProperty ( string $type ) : string
$type string Example: "string", "string(50)", etc
Résultat string the parsed column type name

parseSchema() public méthode

Parses the schema from the json array into a readable format laravel generators extended understand
public parseSchema ( array $data, array $only = [] ) : array
$data array The array containing the json output from file
$only array (optional) array containing specific table/migration names to retrieve from the json file
Résultat array The finished parsed schema for use with generators extended

setMigrationName() public méthode

Creates a migration name from a table name or keeps it intact if a migration name has already been set
public setMigrationName ( string $tableName ) : string
$tableName string The original table name (Example: users, cats, create_users_table)
Résultat string The migration name

validateSchema() public méthode

Validates the schema from the json array and returns an error of syntax errors if any are found
See also: https://laravel.com/docs/5.2/migrations#creating-columns
See also: https://laravel.com/docs/5.2/migrations#creating-indexes
public validateSchema ( array $data ) : array
$data array The array containing the json output from file
Résultat array Any errors identified for every field schema

Property Details

$blueprint protected_oe property

The Blueprint instance.
protected Blueprint,Illuminate\Database\Schema $blueprint
Résultat Illuminate\Database\Schema\Blueprint

$filesystem protected_oe property

The Filesystem instance.
protected Filesystem,Illuminate\Filesystem $filesystem
Résultat Illuminate\Filesystem\Filesystem