/** * @param \Doctrine\ORM\Tools\Event\SchemaAlterTableAddColumnEventArgs $args */ public function onSchemaAlterTableAddColumn(SchemaAlterTableAddColumnEventArgs $args) { $column = $args->getColumn(); if (!$column->getType() instanceof \Doctrine\Spatial\DBAL\Types\Type) { return; } $platform = $args->getPlatform(); $diff = $args->getTableDiff(); $tableName = $diff->newName !== false ? $diff->newName : $diff->name; $args->preventDefault()->addSql($this->getAddColumnSQL($tableName, $column->getQuotedName($platform), $column)); }
public function onSchemaAlterTableAddColumn(SchemaAlterTableAddColumnEventArgs $args) { $column = $args->getColumn(); if (!$this->isSpatialColumnType($column)) { return; } if ('geometry' !== $column->getType()->getName() || $this->schemaManager->isPostGis2()) { return; } $diff = $args->getTableDiff(); $table = false !== $diff->newName ? $diff->newName : $diff->name; $spatialColumnSqlGenerator = new SpatialColumnSqlGenerator($args->getPlatform()); $args->addSql($spatialColumnSqlGenerator->getSql($column, $table))->preventDefault(); }