protected function loadColumnsFromTableInfo() { $this->columns = []; $columns = $this->tableInfo->getColumns(); $primaryKey = $this->tableInfo->getPrimaryKey(); $primaryKeyColumns = []; if ($primaryKey) { $primaryKeyColumns = $primaryKey->getColumns(); } foreach ($columns as $column) { $columnName = $column->getName(); $typeName = $column->getType()->getName(); if ($typeName == EnumDbType::TYPENAME) { throw new ApplicationException(Lang::get('rainlab.builder::lang.database.error_enum_not_supported')); } $item = ['name' => $columnName, 'type' => MigrationColumnType::toMigrationMethodName($typeName, $columnName), 'length' => MigrationColumnType::doctrineLengthToMigrationLength($column), 'unsigned' => $column->getUnsigned(), 'allow_null' => !$column->getNotnull(), 'auto_increment' => $column->getAutoincrement(), 'primary_key' => in_array($columnName, $primaryKeyColumns), 'default' => $column->getDefault(), 'id' => $columnName]; $this->columns[] = $item; } }
protected function loadColumnsFromTableInfo() { $this->columns = []; $columns = $this->tableInfo->getColumns(); $primaryKey = $this->tableInfo->getPrimaryKey(); $primaryKeyColumns = []; if ($primaryKey) { $primaryKeyColumns = $primaryKey->getColumns(); } foreach ($columns as $column) { $columnName = $column->getName(); $typeName = $column->getType()->getName(); $item = ['name' => $columnName, 'type' => MigrationColumnType::toMigrationMethodName($typeName, $columnName), 'length' => MigrationColumnType::doctrineLengthToMigrationLength($column), 'unsigned' => $column->getUnsigned(), 'allow_null' => !$column->getNotnull(), 'auto_increment' => $column->getAutoincrement(), 'primary_key' => in_array($columnName, $primaryKeyColumns), 'default' => $column->getDefault(), 'id' => $columnName]; $this->columns[] = $item; } }