Yii2 自定义 gii 生成器和模板?
Yii2 custom gii generator and template?
我只是根据我对 yii2 的要求实现了一个新的 gii 生成器。
我想知道保存这些代码的最佳位置?
使用自己的生成器 class、视图、模板创建 app\modules\gii
目录。
namespace app\modules\gii;
class MyCustomGenerator extends \yii\gii\generators\crud\Generator
{
// ...
public function generate()
{
// ...
}
}
然后在gii
配置中启用它。
[
// ...
'modules' => [
'gii' => [
'class' => 'yii\gii\Module',
'generators' => [
'class' => '\app\modules\gii\MyCustomGenerator',
'model' => ['class' => '\app\modules\gii\model\MyCustomGenerator'],
],
],
],
]
把自己的 gii 模板放在 app/modules/gii 中没什么好主意。更好的是创建单独的模块。好处:
可以在其他项目中重复使用
如果将它放在 require_dev 下的 composer 中,请不要在生产环境中安装
您需要自定义gii的哪个模块?
如果它是 CRUD 模块,我认为你应该把它放到 app/backend/ 因为它只用于这个应用程序。
这是我的定制:custom crud gii templates
我的文件夹结构:yii2 - custom gii crud templates - folder structure
我只是根据我对 yii2 的要求实现了一个新的 gii 生成器。 我想知道保存这些代码的最佳位置?
使用自己的生成器 class、视图、模板创建 app\modules\gii
目录。
namespace app\modules\gii;
class MyCustomGenerator extends \yii\gii\generators\crud\Generator
{
// ...
public function generate()
{
// ...
}
}
然后在gii
配置中启用它。
[
// ...
'modules' => [
'gii' => [
'class' => 'yii\gii\Module',
'generators' => [
'class' => '\app\modules\gii\MyCustomGenerator',
'model' => ['class' => '\app\modules\gii\model\MyCustomGenerator'],
],
],
],
]
把自己的 gii 模板放在 app/modules/gii 中没什么好主意。更好的是创建单独的模块。好处:
可以在其他项目中重复使用
如果将它放在 require_dev 下的 composer 中,请不要在生产环境中安装
您需要自定义gii的哪个模块? 如果它是 CRUD 模块,我认为你应该把它放到 app/backend/ 因为它只用于这个应用程序。
这是我的定制:custom crud gii templates
我的文件夹结构:yii2 - custom gii crud templates - folder structure