andatech / yii2-user
用户模块的 Yii 2
1.0
2016-09-05 12:21 UTC
Requires
- php: >=5.4.0
- andatech/yii2-core: *
- andatech/yii2-filemanager: *
- dmstr/yii2-adminlte-asset: 2.*
- mdmsoft/yii2-admin: ~2.0
- yiisoft/yii2: *
- yiisoft/yii2-bootstrap: *
This package is not auto-updated.
Last update: 2024-09-24 22:31:37 UTC
README
安装
推荐通过 composer 安装此扩展。
运行以下命令之一
composer require andatech/yii2-user "dev-master"
或者
"andatech/yii2-user": "dev-master"
将以下内容添加到您的 composer.json
文件的 require 部分中。
使用方法
扩展安装完成后,只需在代码中通过以下方式使用它:
配置
'modules' => [ ... 'user' => [ //module id = 'user' only 'class' => 'anda\user\Module', 'loginBy' => 'db', //db or ldap 'userUploadDir' => '@uploads', //real path 'userUploadUrl' => '/uploads', //url path 'userUploadPath' => 'user', //path after upload directory 'admins' => ['admin', 'root'] //list username for manage users ], ... ], 'components' => [ ... 'authManager' => [ 'class' => 'yii\rbac\DbManager' ], 'user' => [ 'identityClass' => 'anda\user\models\User', 'loginUrl' => ['/user/auth/login'], ... ], ... ],
迁移表:用户和资料
./yii migrate --migrationPath=@anda/user/migrations/
并且
./yii migrate --migrationPath=@yii/rbac/migrations/
可用操作列表
- /user/regist/signup 显示注册表单
- /user/auth/login 显示登录表单
- /user/auth/logout 用户登出(仅通过 POST 方法可用)
- /user/auth/request-password-reset 显示密码重置请求表单
- /user/auth/reset-password 显示密码重置表单
- /user/settings/profile 显示资料设置表单
- /user/settings/account 显示账户设置表单
- /user/settings/change-password 显示更改密码设置表单
- /user/admin/index 显示用户管理界面
菜单示例
您可以根据以下方式添加注册、登录和登出链接
Yii::$app->user->isGuest ? ['label' => 'Sign in', 'url' => ['/user/auth/login']] : ['label' => 'Sign out (' . Yii::$app->user->identity->username . ')', 'url' => ['/user/auth/logout'], 'linkOptions' => ['data-method' => 'post']], ['label' => 'Register', 'url' => ['/user/regist/signup'], 'visible' => Yii::$app->user->isGuest]
调用用户信息
//Current user $user = Yii::$app->user->identity; print_r($user->profile->resultInfo); //if use $user->profile->resultData in result = base user data
示例结果
stdClass Object ( [id] => 1 [username] => admin [email] => admin@andatech.net [created_at] => 1473135990 [updated_at] => 1473135990 [firstname] => Admin [lastname] => สูงสุด [fullname] => Admin สูงสุด [avatar] => /uploads/user/avatars/57ce45f61e617_57ce45f60fb8b.jpg [cover] => /assets/37f5d0d0/images/default-cover.jpg [bio] => [data] => Not set [roles] => Array ( ) )
//another user $user = \anda\user\models\User::findOne(2); print_r($user->profile->resultInfo); //if use $user->profile->resultData in result = base user data
示例结果
stdClass Object ( [id] => 2 [username] => surakit.c [email] => surakit.c@psu.ac.th [created_at] => 1473136616 [updated_at] => 1473136616 [firstname] => สุรกิจ [lastname] => ชูเดช [fullname] => สุรกิจ ชูเดช [avatar] => /uploads/user/avatars/57ce4a3126b31_57ce4a31218d0.jpg [cover] => /uploads/user/covers/57ce4a5bd842f_57ce4a5bd40bd.png [bio] => [data] => Not set [roles] => Array ( ) )