/** * @inheritdoc */ public function generate() { $files = parent::generate(); if (!empty($this->viewModelClass)) { $viewModel = Yii::getAlias('@' . str_replace('\\', '/', ltrim($this->viewModelClass, '\\') . '.php')); $files[] = new CodeFile($viewModel, $this->render('view.php')); } return $files; }
public function testCRUDGenerator() { $generator = new CRUDGenerator(); $generator->template = 'default'; $generator->modelClass = 'yiiunit\\extensions\\gii\\Profile'; $generator->controllerClass = 'app\\TestController'; $valid = $generator->validate(); $this->assertTrue($valid, 'Validation failed: ' . print_r($generator->getErrors(), true)); $this->assertNotEmpty($generator->generate()); }
public function generate() { $files = parent::generate(); //Remove the old controller if not asked and file already exists $controllerClassFile = Yii::getAlias('@' . str_replace('\\', '/', ltrim($this->controllerClass, '\\')) . '.php'); if (!$this->generateControllerClass && is_file($controllerClassFile)) { $files = array_filter($files, function ($row) use($controllerClassFile) { return $row->path != $controllerClassFile; }); } $traitFile = Yii::getAlias('@' . str_replace('\\', '/', ltrim($this->traitClass, '\\')) . '.php'); $files[] = new CodeFile($traitFile, $this->render('trait.php')); return $files; }
public function testCRUDGenerator() { $generator = new CRUDGenerator(); $generator->template = 'default'; $generator->modelClass = 'yiiunit\\extensions\\gii\\Profile'; $generator->controllerClass = 'app\\TestController'; if ($generator->validate()) { $generator->generate(); } else { print_r($generator->getErrors()); } }
public function generate() { if ($this->singularEntities) { $this->modelClass = Inflector::singularize($this->modelClass); $this->controllerClass = Inflector::singularize(substr($this->controllerClass, 0, strlen($this->controllerClass) - 10)) . "Controller"; $this->searchModelClass = Inflector::singularize($this->searchModelClass); } return parent::generate(); }
/** * @inheritdoc */ public function generate() { $this->getModelAttributes(); return; //$this->readModel($this->modelClass); $this->relationsFields(); $files = parent::generate(); if ($this->enableI18N && $this->addingI18NStrings && !empty($this->I18NStrings)) { if (($pos = strpos($this->controllerClass, '\\controllers\\')) !== false) { $path = rtrim(Yii::getAlias('@' . str_replace('\\', '/', ltrim(substr($this->controllerClass, 0, $pos), '\\'))), '/') . '/messages'; if (is_dir($path)) { foreach (array_diff(scandir($path), ['.', '..']) as $language) { $filename = "{$path}/{$language}/{$this->messageCategory}.php"; $messages = file_exists($filename) ? require $filename : []; $messages = array_merge($messages, array_diff_key($this->I18NStrings, $messages)); $files[] = new CodeFile($filename, "<?php\nreturn " . VarDumper::export($messages) . ";"); } } } } return $files; }