2016-07-05 3 views
1

Я пытаюсь использовать свой собственный набор шаблонов для создания cruds и модели с giiant от Tobias Мунка и folowing: https://github.com/schmunk42/yii2-giiant/blob/master/docs/32-customizations.mdДобавить пользовательский шаблон модели с использованием yii2 giiant

, но я не могу заставить его работать.

Сначала я копирую каталог/yii2-giiant/src/generators в свое приложение и вносил некоторые изменения.

Затем я изменил конфиг следующим образом:

$config['modules']['gii'] = [ 
'class'  => 'yii\gii\Module', 
'allowedIPs' => ['127.0.0.1'], 
'generators' => [ 
    // generator name 
    'giiant-model' => [ 
     //generator class 
     'class'  => 'schmunk42\giiant\generators\model\Generator', 
     //setting for out templates 
     'templates' => [ 
      // template name => path to template 
      'oemodel' => 
       '@app/oetemplates/model/default', 
     ] 
    ] 
], 

];

, но когда я запускаю giiant-форму от администратора, я не собираю свой код.

Я также могу видеть в форме поле выбора, которое показывает каталог по умолчанию с шаблонами. но не уверен, как добавить мою там.

templates

Любые идеи приветствуются ...

ответ

0

Как я следовал schmunk42 документации было хорошо, и не конечно, почему он не работал. Возможно, я не тестировал правильно, или я не добавил конфигурацию в нужном месте.

Но если вы используете модуль schmunk42/yii2-giiant, и вы хотите использовать свой собственный шаблон для генерации кода, не касаясь модуля.

Следующая конфигурация должна принести вам свою собственную модель в окне выбора

В моем случае, как я уже сказал, я просто скопировал/каталог/yii2-giiant SRC/генераторы в мое приложение (в моем случае) внутри oetemplates:

$config['modules']['gii'] = [ 
    'class' => 'yii\gii\Module', 
    'allowedIPs' => $allowedIPs, 
]; 

$giiant = require __DIR__.'/giiant.php'; 
$config = \yii\helpers\ArrayHelper::merge($config, $giiant); 

$config['modules']['gii'] = [ 
    'class'  => 'yii\gii\Module', 
    'allowedIPs' => ['127.0.0.1'], 
    'generators' => [ 
     // generator name 
     'giiant-model' => [ 
      //generator class 
      'class'  => 'schmunk42\giiant\generators\model\Generator', 
      //setting for out templates 
      'templates' => [ 
       // template name => path to template 
       'oemodel' => 
        '@app/oetemplates/model/default', 
      ] 
     ] 
    ], 
]; 

Тогда, когда я иду в бэкэндом я могу видеть в Giiant Model мой шаблон:

my template

И все работает отлично.

0

Вы не можете изменить "generators" клавиши, т.е.

Оно должно быть:

$config['modules']['gii'] = [ 
'class'  => 'yii\gii\Module', 
'allowedIPs' => ['127.0.0.1'], 
'generators' => [ 
    // generator name 
    'model' => [ 
     //generator class 
     'class'  => 'schmunk42\giiant\generators\model\Generator', 
     //setting for out templates 
     'templates' => [ 
      // template name => path to template 
      'oemodel' => 
       '@app/oetemplates/model/default', 
     ] 
    ] 
], 

// Имя генератора должно be

'отбросы' => [...],

'модель' => [...],

и т.д.