コード例 #1
0
ファイル: Generator.php プロジェクト: natronite/caribou
 private static function generateColumns(Template $template, Table $table)
 {
     /** @var Column $column */
     $columns = [];
     foreach ($table->getColumns() as $column) {
         $c = "'" . $column->getName() . "' => new Column(";
         $c .= "\n\t" . self::LINE_PREFIX . "\"" . $column->getName() . "\",\n";
         $c .= Generator::varExport($column->getDescription(), self::LINE_PREFIX . "\t");
         $c .= "\n" . self::LINE_PREFIX . ")";
         $columns[] = $c;
     }
     $template->set('columns', implode(",\n" . self::LINE_PREFIX, $columns));
 }
コード例 #2
0
ファイル: Caribou.php プロジェクト: natronite/caribou
 public function generate()
 {
     echo "Generating Caribou MySQL migration\n";
     $version = "0.0.0";
     if (!is_dir($this->migrationsDir)) {
         echo "Creating migrations directory\n";
         mkdir($this->migrationsDir);
     } else {
         $content = scandir($this->migrationsDir);
         natsort($content);
         $content = array_reverse($content);
         foreach ($content as $c) {
             if (is_dir($this->migrationsDir . DIRECTORY_SEPARATOR . $c) && $c != "." && $c != "..") {
                 $version = $this->increaseVersion($c);
                 break;
             }
         }
     }
     Generator::generateVersion($version, $this->migrationsDir);
 }