LazyRecord\Migration\MigrationGenerator::generate PHP Метод

generate() публичный Метод

public generate ( $taskName, $time = null )
    public function generate($taskName, $time = null)
    {
        $template = $this->createClassTemplate($taskName, $time);
        $template->addMethod('public', 'upgrade', array(), '');
        $template->addMethod('public', 'downgrade', array(), '');
        $filename = $this->generateFilename($taskName, $time);
        $path = $this->migrationDir . DIRECTORY_SEPARATOR . $filename;
        if (false === file_put_contents($path, $template->render())) {
            throw new RuntimeException("Can't write template to {$path}");
        }
        return array($template->class->name, $path);
    }

Usage Example

 public function execute($taskName)
 {
     $dsId = $this->getCurrentDataSourceId();
     $generator = new MigrationGenerator(Console::getInstance()->getLogger(), 'db/migrations');
     $this->logger->info("Creating migration script for '" . $taskName . "'");
     list($class, $path) = $generator->generate($taskName);
     $this->logger->info("Migration script is generated: {$path}");
 }
All Usage Examples Of LazyRecord\Migration\MigrationGenerator::generate