2016-12-08 3 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) 
    } 
}