簡體   English   中英

如何檢測后端或前端上使用的yii2模塊

[英]How to detect yii2 module used on backend or frontend

可以從兩側使用模塊,如何從模塊引導文件( yii\\base\\BootstrapInterface )中檢測到該模塊

使用$app->id並不是一個好主意。

您可以使用以下簡單功能:

function getContext() { return basename(Yii::getAlias('@app')); }

如果您正在運行高級模板,它將返回'frontend''backend''console'

問題在於應理解的是,應用程序並不僅限於前\\后。 它們可以完成兩個或三個以上。 例如,我們有一個項目,其中包括:front / admin / trade / management / central_bank / public_screen。 在這種情況下怎么辦? 您很可能正在考慮錯誤的模塊架構。 一個好的解決方案似乎是:

class MyModule extends Module{
 public $name_space = "";
}

//and when you define you configs:
[
    'myModule' => [
        'class' => 'common\modules\MyModule',
        'name_space'=>'application_group'
    ],
]
//also you can bootstrap it

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM