2016-12-08 8 views
0

こんにちは、マイグレーションクラスで使用できる独自のカスタムメソッドを作成したいと思います。DoctrineMigrationsに独自のカスタムメソッドを追加する

MigrationTraitFile.php

trait MigrationTrait { 
    public function addAdditionalTable() { 
     ... 
    } 

VersionXXX.php

class VersionXXX { 
    use MigrationTrait; 
    public function up() { 
     $this->addAdditionalTable() 
    } 

だから、形質が私のマイグレーションクラスで表を作成する必要がありaddSql:私はこのような何かを意味します。何か案が?

答えて

0

形質は/任意のコンテキストを持っていないはずはありませんので、あなたはパラメータを渡す:

形質:

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) 
    } 
} 
関連する問題