0

我已经设置了 Yii2 嵌套模块,我想设置不同的配置,每个模块都有自己的组件和其他设置,有自己的模型

就像在学校管理系统中一样,我创建了一个嵌套模块,比如 V1 是我的 API(主模块),在这些模块下,我创建了一个学生模块、教师模块、父模块、驱动程序模块、管理模块,每个模块都有不同的表和不同的模型。我想用不同的方式登录每个用户,比如..

每个 API 调用

https://example.com/v1/admin/login

https://example.com/v1/student/login

https://example.com/v1/parent/login

https://example.com/v1/user/login

https://example.com/v1/driver/login

如何管理这些登录名和他们自己的配置?

在此处输入图像描述

谢谢

日滕德拉

4

1 回答 1

0

在模块类中,您可以设置组件、别名和其他设置,并使用如下内容:

这是管理模块的示例:

class Admin extends Module
{

    // ...

    /**
     * {@inheritdoc}
     */
    public function init()
    {
        parent::init();

        // custom initialization code goes here

        $this->setComponents([
            // array of components
        ]);

        // ...
    }
}

或者,如果您愿意,可以像这样设置组件

$this->components = [
    // array of components
]);

如果您使用的是嵌套模块,则您已经为模块指定了“设置”——即所有子模块

要在指定组件时为所有模块使用不同的登录名,请identityCookie为每个模块的用户组件设置不同的名称。

管理模块示例:

$this->components => [
    'user' => [
        'identityClass' => 'common\models\User',
        'enableAutoLogin' => true,
        'identityCookie' => ['name' => '_identity-admin', 'httpOnly' => true],
    ],
    // ... other components
于 2020-02-24T14:38:55.750 回答