web-dev-qa-db-ja.com

Giiを動作させるYii 2.0

高度なテンプレートをダウンロードして抽出し、バックエンドとフロントエンドのルートドキュメントを変更しましたが、Giiを動作させてクラッド操作を実行する方法がわかりません。

作曲家にはrequireとrequire-devフィールドがあります.JSON iは、両方にgiiを含めましたが、それぞれに運がありませんでした。

また、composerを介してテンプレートを取得しようとしましたが、インストール中にgiiがインストールされているように見えましたが、それでも機能しませんでした。

これは私が私の得た場所ですYiiテンプレート: https://github.com/yiisoft/yii2-app-advanced

9
tareq

これは、高度なセットアップテンプレートのリモートサーバーからGiiを動作させる方法です。

フロントエンド構成ファイル。例えば:

/frontend/config/main-local.php

次のコードを追加します。

if (!YII_ENV_TEST) {
    // configuration adjustments for 'dev' environment
    $config['bootstrap'][] = 'debug';
    $config['modules']['debug'] = 'yii\debug\Module';

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

興味深い部分は、変更されたGii arrayです。

20
girish

ステップ1:composer.jsonのrequired-devに次の行を追加します

"yiisoft/yii2-gii": "*"

ステップ2:作曲家を更新します。ステップ3:次の行をfrontend/config/main.phpファイルに追加します。これらを含まないでください........

  'modules' => [
    ............
    'gii' => [
      'class' => 'yii\gii\Module', //adding gii module
      'allowedIPs' => ['127.0.0.1', '::1']  //allowing ip's 
    ],
    ...........
  ]

ステップ4:クリーンURLを有効にした場合は、次に進みます

project_name/frontend/web/gii

そうでなければ、次に行きます

project_name/frontend/web/index.php?r=gii

あなたはリンクをたどることができます yii2_gii

9
Kshitiz

説明されているように ドキュメント内/ frontend/config/main-local.phpで許可されたIPを調整する必要があります:

    if (!YII_ENV_TEST) {
      ...
      $config['bootstrap'][] = 'gii';
      $config['modules']['gii'] = [
        'class' => 'yii\gii\Module',
        'allowedIPs' => ['127.0.0.1', '::1', '192.168.*.*']
      ];
    }

/ frontend/config/main.phpを次のように変更して、きれいなURLを作成した場合

    return [
    ...
    'components' => [
      ...
      'urlManager' => [
            'class' => 'yii\web\UrlManager',
            'enablePrettyUrl' => true,
            'showScriptName' => false
      ],
      ...
    ];

あなたはURLでGIIを呼び出すことができます

    yourVM.local/gii

yourVM.localがHostsファイルのフロントエンドモジュールを指している。)

5
Mischa

また、giiがまだ機能しない場合は、これを試してください。

これはyiiチームによって文書化されるべきです!

initコマンドを使用した後、/frontend/config/main-local.php、見つけた:

if (!YII_ENV_TEST) {
    // configuration adjustments for 'dev' environment
    $config['bootstrap'][] = 'debug';
    $config['modules']['debug'] = 'yii\debug\Module';

    $config['bootstrap'][] = 'gii';
    $config['modules']['gii'] = 'yii\gii\Module';
}

私のアプリはdevモードで、上記の宣言により、giiが機能しなくなります。そのため、その行にコメントを付けます。

関連する構成ファイルの「コンポーネント」にあるurlManager要素(かなりのURLを無効にする)をコメント化する必要がありました(実際にはデフォルトでコメント化されています)。

backend/config/main.php

かなりのURLを無効にする前に、Giiページをロードすることができましたが、ジェネレーターページ(コントローラー、モデルなど)のいずれかをロードしようとすると、ホームページにリダイレクトされました。

1
Brent Self