From da66097eabcf8268f141c027ba03e0e918e04397 Mon Sep 17 00:00:00 2001 From: Nobuo Kihara Date: Fri, 30 Oct 2015 22:26:39 +0900 Subject: [PATCH] docs/guide-ja/structure-modules.md updated [ci skip] --- docs/guide-ja/README.md | 2 +- docs/guide-ja/structure-modules.md | 26 ++++++++++++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/docs/guide-ja/README.md b/docs/guide-ja/README.md index e4acb016e6..30319bf739 100644 --- a/docs/guide-ja/README.md +++ b/docs/guide-ja/README.md @@ -144,7 +144,7 @@ RESTful ウェブサービス ---------- * [デバッグツールバーとデバッガ](https://github.com/yiisoft/yii2-debug/blob/master/docs/guide-ja/README.md) -* [Gii を使ってコードを生成する](https://github.com/yiisoft/yii2-gii/blob/master/docs/guide/README.md) +* [Gii を使ってコードを生成する](https://github.com/yiisoft/yii2-gii/blob/master/docs/guide-ja/README.md) テスト diff --git a/docs/guide-ja/structure-modules.md b/docs/guide-ja/structure-modules.md index 4865d1316d..a1b6c0e525 100644 --- a/docs/guide-ja/structure-modules.md +++ b/docs/guide-ja/structure-modules.md @@ -110,6 +110,32 @@ class PostController extends Controller `layout` プロパティを構成しない場合は、アプリケーションのレイアウトが代りに使用されます。 +### モジュール内のコンソールコマンド + +[コンソール](tutorial-console.md) モードで使用する事が出来るコマンドをmodeコマンドをモジュール内で宣言することも可能です。 + +あなたのコマンドがコマンドラインユーティリティから見えるようにするためには、Yii がコンソールモードで実行されたときに +[[yii\base\Module::controllerNamespace]] を変更して、コマンドの名前空間を指し示すようにする必要があります。 + +それを達成する一つの方法は、モジュールの `init` メソッドの中で Yii アプリケーションのインスタンスの型を調べるという方法です。 + +```php +public function init() +{ + parent::init(); + if (Yii::$app instanceof \yii\console\Application) { + $this->controllerNamespace = 'app\modules\forum\commands'; + } +} +``` + +このようにすれば、コマンドラインから次のルートを使ってあなたのコマンドを使用する事が出来るようになります。 + +``` +yii // +``` + + ## モジュールを使う アプリケーションの中でモジュールを使うためには、アプリケーションの [[yii\base\Application::modules|modules]] プロパティのリストにそのモジュールを載せてアプリケーションを構成するだけで大丈夫です。