1
嗨,我有这个控制器在Yii2中呈现给我看。然后,我可以在控制台yii generator/generate示例中编写示例,然后这个动作生成我的框架od模型和控制器,这些在我的视图中都有。这是代码赋值给一个字符串变量,其中是另一个变量
<?php
namespace console\controllers;
use yii\console\Controller;
class GeneratorController extends Controller {
private $viewControllerPath = "rest/modules/crm/v1/controllers/";
private $viewModelPath = 'rest/modules/crm/v1/models/';
public function actionGenerate($className, $modelClass) {
$controller = $this->renderFile('@app/views/generator/restController.php', ['className' => $className, 'modelClass' =>
$modelClass]);
file_put_contents(\Yii::getAlias($this->viewControllerPath . $className . 'Controller' . '.php'), $controller);
$model = $this->renderFile('@app/views/generator/restModel.php', ['className' => $className, 'modelClass' => $modelClass]);
file_put_contents(\Yii::getAlias($this->viewModelPath . $className . 'Model' . '.php'), $model);
}
}`
这是这个观点:
`
<?php
echo "<?php\n";
?>
namespace rest\modules\<?= $modelClass ?>\v1\models;
use common\models\<?= $modelClass ?>\<?= $className ?> as CommonModel;
class <?= $className ?> extends CommonModel {
}`
最后觉得我应该做的就是把MZ变量$ modelClass在这条道路
private $viewControllerPath = "rest/modules/crm/v1/controllers/";
,而不是客户关系管理。然后我的模型和控制器将出现在适当的文件夹中。 我尝试这样做,但它不是工作:
private $viewControllerPath = "rest/modules/'.$modelClass.'/v1/controllers/";
任何人都可以帮我吗?也许我可以用__constructor有,但我不知道如何做到这一点