在后端使用Yii2前端用户注册

在后端使用Yii2前端用户注册,yii2,yii2-advanced-app,Yii2,Yii2 Advanced App,在Yii2高级模板中,他们在前端为新用户提供注册组件 我想把注册过程放到/后端,这样只有管理员用户才能创建其他新用户 因此,在移动SignupForm、signup视图、将注册操作添加到后端/SiteController中,我收到403错误“您不允许执行此操作” 有没有人能够将注册过程放到Yii2中高级模板的后端 我想做的是让管理员用户创建新用户,并将登录详细信息提供给外部方。然后会建议外部方运行密码重置,以便设置自己的密码。但实际上,它锁定了注册/注册过程。没有任何东西可以阻止你完成这项工作。

在Yii2高级模板中,他们在前端为新用户提供注册组件

我想把注册过程放到/后端,这样只有管理员用户才能创建其他新用户

因此,在移动SignupForm、signup视图、将注册操作添加到后端/SiteController中,我收到403错误“您不允许执行此操作”

有没有人能够将注册过程放到Yii2中高级模板的后端


我想做的是让管理员用户创建新用户,并将登录详细信息提供给外部方。然后会建议外部方运行密码重置,以便设置自己的密码。但实际上,它锁定了注册/注册过程。

没有任何东西可以阻止你完成这项工作。但在此过程中需要改变一些事情

首先,我猜您的错误消息来自后端SiteController具有的AccessControl:

public function behaviors()
{
    return [
        'access' => [
            'class' => AccessControl::className(),
            'rules' => [
                [
                    'actions' => ['login', 'error'],
                    'allow' => true,
                ],
                [
                    'actions' => ['logout', 'index'],
                    'allow' => true,
                    'roles' => ['@'],
                ],
            ],
        ],
        'verbs' => [
            'class' => VerbFilter::className(),
            'actions' => [
                'logout' => ['post'],
            ],
        ],
    ];
}
将此更改为:

public function behaviors()
{
    return [
        'access' => [
            'class' => AccessControl::className(),
            'rules' => [
                [
                    'actions' => ['login', 'error'],
                    'allow' => true,
                ],
                [
                    'actions' => ['logout', 'index', 'signup'],
                    'allow' => true,
                    'roles' => ['@'],
                ],
            ],
        ],
        'verbs' => [
            'class' => VerbFilter::className(),
            'actions' => [
                'logout' => ['post'],
            ],
        ],
    ];
}
Orelse这将导致错误消息:

Forbidden (#403)
You are not allowed to perform this action.
请记住,注册功能是为来宾注册而设计的,它会在创建帐户时自动让用户即时登录。 您必须删除此功能,并且在此过程中可能会遇到其他一些错误

祝你好运