在google中没有关于启用和禁用模块的更多信息,所以我在这里遇到麻烦。
我在yii2中构建了一些模块,如users
,payments
,subscriptions
,news
等。我想禁用subscriptions
个模块。有可能吗?
编辑:启用和禁用功能应允许最终用户使用。
答案 0 :(得分:2)
我会将以下代码放在支持被禁用/启用的模块类中。
因此,对于每个模块(users
,subscriptions
,news
等),您都有扩展\yii\base\Module
的模块类。将代码放在每个模块类中,并检查相应的设置。
public function init() {
if (!$this->_isModuleEnabled()) {
// This can also be another exception of course.
throw new \Exception("This module isn't enabled.");
}
parent::init();
}
private function _isModuleEnabled() {
/**
* Probably check some setting in the database or someting. Then
* return true or false depending on that setting.
*/
return true;
}