Documentation

TableMigrationCodeGenerator extends BaseModel
in package

Generates migration code for creating, updates and deleting tables.

Tags
author

Alexey Bobkov, Samuel Georges

Table of Contents

COLUMN_MODE_CHANGE  = 'change'
COLUMN_MODE_CREATE  = 'create'
COLUMN_MODE_REVERT  = 'revert'
$exists  : bool
$eol  : mixed
$fillable  : mixed
$indent  : mixed
$pluginCodeObj  : PluginCode
$updatedData  : mixed
$validationMessages  : mixed
$validationRules  : mixed
createOrUpdateTable()  : string|bool
Generates code for creating or updating a database table.
dropTable()  : string
Generates code for dropping a database table.
fill()  : mixed
getModelPluginName()  : mixed
getPluginCodeObj()  : mixed
isNewModel()  : mixed
setPluginCode()  : mixed
Sets a string code of a plugin the model is associated with
setPluginCodeObj()  : mixed
Sets a code object of a plugin the model is associated with
validate()  : mixed
wrapMigrationCode()  : Bracket
Wrap migration's up() and down() functions into a complete migration class declaration
applyMethodIncrements()  : mixed
findPrimaryKeyIndex()  : mixed
formatLengthParameters()  : mixed
generateBooleanMethod()  : mixed
generateBooleanString()  : mixed
generateColumnCode()  : mixed
generateColumnDrop()  : mixed
generateColumnMethodCall()  : mixed
generateColumnRemoveCode()  : mixed
generateColumnRenameCode()  : mixed
generateCreateOrUpdateCode()  : mixed
generateCreateOrUpdateDownCode()  : mixed
generateCreateOrUpdateUpCode()  : mixed
generateDefault()  : mixed
generateDefaultMethodCall()  : mixed
generateDropDownCode()  : mixed
generateDropUpCode()  : mixed
generateIndexDrop()  : mixed
generateMigrationCode()  : mixed
generateNullable()  : mixed
generatePrimaryKeyCode()  : mixed
generatePrimaryKeyDrop()  : mixed
generateSchemaTableMethodEnd()  : mixed
generateSchemaTableMethodStart()  : mixed
generateTableDropCode()  : mixed
generateTableRenameCode()  : mixed
generateUnsigned()  : mixed
getChangedOrRemovedPrimaryKey()  : mixed
implodeColumnList()  : mixed
indent()  : mixed
indexHasAutoincrementColumns()  : mixed
makeTabs()  : mixed
quoteParameter()  : mixed
tableHasNameOrColumnChanges()  : mixed
tableHasPrimaryKeyChanges()  : mixed
validateBeforeCreate()  : mixed

Constants

Properties

$exists

public bool $exists = false

This property is used by the system internally.

$fillable

protected static mixed $fillable = []

$pluginCodeObj

protected PluginCode $pluginCodeObj = null

The plugin code object the model is associated with.

$updatedData

protected mixed $updatedData = []

$validationMessages

protected mixed $validationMessages = []

$validationRules

protected mixed $validationRules = []

Methods

createOrUpdateTable()

Generates code for creating or updating a database table.

public createOrUpdateTable(Table $updatedTable, Table $existingTable, string $newTableName) : string|bool
Parameters
$updatedTable : Table

Specifies the updated table schema.

$existingTable : Table

Specifies the existing table schema, if applicable.

$newTableName : string

An updated name of the theme.

Return values
string|bool

Returns the migration up() and down() methods code. Returns false if there the table was not changed.

dropTable()

Generates code for dropping a database table.

public dropTable(Table $existingTable) : string
Parameters
$existingTable : Table

Specifies the existing table schema.

Return values
string

Returns the migration up() and down() methods code.

fill()

public fill(array<string|int, mixed> $attributes) : mixed
Parameters
$attributes : array<string|int, mixed>
Return values
mixed

getModelPluginName()

public getModelPluginName() : mixed
Return values
mixed

getPluginCodeObj()

public getPluginCodeObj() : mixed
Return values
mixed

isNewModel()

public isNewModel() : mixed
Return values
mixed

setPluginCode()

Sets a string code of a plugin the model is associated with

public setPluginCode(string $code) : mixed
Parameters
$code : string

Specifies the plugin code

Return values
mixed

setPluginCodeObj()

Sets a code object of a plugin the model is associated with

public setPluginCodeObj(PluginCode $obj) : mixed
Parameters
$obj : PluginCode

Specifies the plugin code object

Return values
mixed

validate()

public validate() : mixed
Return values
mixed

wrapMigrationCode()

Wrap migration's up() and down() functions into a complete migration class declaration

public wrapMigrationCode(string $scriptFilename, string $code, PluginCode $pluginCodeObj) : Bracket
Parameters
$scriptFilename : string

Specifies the migration script file name

$code : string

Specifies the migration code

$pluginCodeObj : PluginCode

The plugin code object

Return values
Bracket

applyMethodIncrements()

protected applyMethodIncrements(mixed $method, mixed $column) : mixed
Parameters
$method : mixed
$column : mixed
Return values
mixed

findPrimaryKeyIndex()

protected findPrimaryKeyIndex(mixed $indexes, mixed $table) : mixed
Parameters
$indexes : mixed
$table : mixed
Return values
mixed

formatLengthParameters()

protected formatLengthParameters(mixed $column, mixed $method) : mixed
Parameters
$column : mixed
$method : mixed
Return values
mixed

generateBooleanMethod()

protected generateBooleanMethod(mixed $methodName, mixed $value) : mixed
Parameters
$methodName : mixed
$value : mixed
Return values
mixed

generateBooleanString()

protected generateBooleanString(mixed $value) : mixed
Parameters
$value : mixed
Return values
mixed

generateColumnCode()

protected generateColumnCode(mixed $columnData, mixed $mode) : mixed
Parameters
$columnData : mixed
$mode : mixed
Return values
mixed

generateColumnDrop()

protected generateColumnDrop(mixed $column) : mixed
Parameters
$column : mixed
Return values
mixed

generateColumnMethodCall()

protected generateColumnMethodCall(mixed $column) : mixed
Parameters
$column : mixed
Return values
mixed

generateColumnRemoveCode()

protected generateColumnRemoveCode(mixed $name) : mixed
Parameters
$name : mixed
Return values
mixed

generateColumnRenameCode()

protected generateColumnRenameCode(mixed $fromName, mixed $toName) : mixed
Parameters
$fromName : mixed
$toName : mixed
Return values
mixed

generateCreateOrUpdateCode()

protected generateCreateOrUpdateCode(mixed $tableDiff, mixed $isNewTable, mixed $newOrUpdatedTable) : mixed
Parameters
$tableDiff : mixed
$isNewTable : mixed
$newOrUpdatedTable : mixed
Return values
mixed

generateCreateOrUpdateDownCode()

protected generateCreateOrUpdateDownCode(mixed $tableDiff, mixed $isNewTable, mixed $newOrUpdatedTable) : mixed
Parameters
$tableDiff : mixed
$isNewTable : mixed
$newOrUpdatedTable : mixed
Return values
mixed

generateCreateOrUpdateUpCode()

protected generateCreateOrUpdateUpCode(mixed $tableDiff, mixed $isNewTable, mixed $newOrUpdatedTable) : mixed
Parameters
$tableDiff : mixed
$isNewTable : mixed
$newOrUpdatedTable : mixed
Return values
mixed

generateDefault()

protected generateDefault(mixed $column, mixed $changeMode, mixed $columnData, mixed $forceFlagsChange) : mixed
Parameters
$column : mixed
$changeMode : mixed
$columnData : mixed
$forceFlagsChange : mixed
Return values
mixed

generateDefaultMethodCall()

protected generateDefaultMethodCall(mixed $default, mixed $column) : mixed
Parameters
$default : mixed
$column : mixed
Return values
mixed

generateDropDownCode()

protected generateDropDownCode(mixed $table) : mixed
Parameters
$table : mixed
Return values
mixed

generateDropUpCode()

protected generateDropUpCode(mixed $table) : mixed
Parameters
$table : mixed
Return values
mixed

generateIndexDrop()

protected generateIndexDrop(mixed $index) : mixed
Parameters
$index : mixed
Return values
mixed

generateMigrationCode()

protected generateMigrationCode(mixed $upCode, mixed $downCode) : mixed
Parameters
$upCode : mixed
$downCode : mixed
Return values
mixed

generateNullable()

protected generateNullable(mixed $column, mixed $changeMode, mixed $columnData, mixed $forceFlagsChange) : mixed
Parameters
$column : mixed
$changeMode : mixed
$columnData : mixed
$forceFlagsChange : mixed
Return values
mixed

generatePrimaryKeyCode()

protected generatePrimaryKeyCode(mixed $index) : mixed
Parameters
$index : mixed
Return values
mixed

generatePrimaryKeyDrop()

protected generatePrimaryKeyDrop(mixed $table) : mixed
Parameters
$table : mixed
Return values
mixed

generateSchemaTableMethodStart()

protected generateSchemaTableMethodStart(mixed $tableName, mixed $isNewTable) : mixed
Parameters
$tableName : mixed
$isNewTable : mixed
Return values
mixed

generateTableDropCode()

protected generateTableDropCode(mixed $name) : mixed
Parameters
$name : mixed
Return values
mixed

generateTableRenameCode()

protected generateTableRenameCode(mixed $fromName, mixed $toName) : mixed
Parameters
$fromName : mixed
$toName : mixed
Return values
mixed

generateUnsigned()

protected generateUnsigned(mixed $column, mixed $changeMode, mixed $columnData, mixed $forceFlagsChange) : mixed
Parameters
$column : mixed
$changeMode : mixed
$columnData : mixed
$forceFlagsChange : mixed
Return values
mixed

getChangedOrRemovedPrimaryKey()

protected getChangedOrRemovedPrimaryKey(mixed $tableDiff) : mixed
Parameters
$tableDiff : mixed
Return values
mixed

implodeColumnList()

protected implodeColumnList(mixed $columnNames) : mixed
Parameters
$columnNames : mixed
Return values
mixed

indexHasAutoincrementColumns()

protected indexHasAutoincrementColumns(mixed $index, mixed $table) : mixed
Parameters
$index : mixed
$table : mixed
Return values
mixed

tableHasNameOrColumnChanges()

protected tableHasNameOrColumnChanges(mixed $tableDiff[, mixed $columnChangesOnly = false ]) : mixed
Parameters
$tableDiff : mixed
$columnChangesOnly : mixed = false
Return values
mixed

tableHasPrimaryKeyChanges()

protected tableHasPrimaryKeyChanges(mixed $tableDiff) : mixed
Parameters
$tableDiff : mixed
Return values
mixed

validateBeforeCreate()

protected validateBeforeCreate() : mixed
Return values
mixed

Search results