Добавьте свой собственный метод в DoctrineMigrations
Привет я хотел бы создать свой собственный метод, который я мог бы использовать в классе миграции. Я имею в виду что-то вроде этого:
MigrationTraitFile.php
trait MigrationTrait {
public function addAdditionalTable() {
...
}
VersionXXX.php
class VersionXXX {
use MigrationTrait;
public function up() {
$this->addAdditionalTable()
}
Так что эта черта должна добавить SQL для создания таблицы в моем классе миграции. Любая идея?
1 ответ
Поскольку эта черта не имеет / не должна иметь никакого контекста, вы передаете параметр:
Черта характера:
use Doctrine\DBAL\Migrations\AbstractMigration;
trait MigrationTrait {
public function addAdditionalTable(AbstractMigration $migration) {
$migration->addSql('...');
}
}
Версия:
use Doctrine\DBAL\Migrations\AbstractMigration;
use Doctrine\DBAL\Schema\Schema;
class VersionXXX extends AbstractMigration {
use MigrationTrait;
public function up(Schema $schema) {
$this->addAdditionalTable($this)
}
}