cakemanager / cakephp-users
CakePHP 用户插件
Requires
- php: >=5.4.16
- cakemanager/cakephp-utils: dev-master
- cakephp/cakephp: ~3.0
Requires (Dev)
Suggests
- cakemanager/cakephp-cakeadmin: Dynamic admin-panel for your application
This package is auto-updated.
Last update: 2024-09-06 22:03:01 UTC
README
注意:目前这是一个不稳定的 CakePHP 3.x 插件。它目前处于开发中,应被视为实验性的。
目录
功能
- CakeAdmin 兼容
- 忘记密码功能
- 角色管理(设置您自己的角色)
- 电子邮件集成
- 易于安装
安装
您可以使用 composer 将此插件安装到您的 CakePHP 应用程序中。
安装 composer 软件包的推荐方式是
composer require cakemanager/cakephp-users
现在使用以下命令加载插件
$ bin/cake plugin load -r -b Users
使用以下命令运行数据库迁移
$ bin/cake migrations migrate --plugin Users
用法
使用用户插件非常简单。在您的 AppController
中使用以下代码
public function initialize()
{
parent::initialize();
$this->loadComponent('Users.UserManager');
}
您可以使用 $this->Users->config('auth.*settings*');
或 $this->Auth->config()
(在加载 UserManagement
组件后)来更改 AuthComponent
的配置。
从现在起,您将能够注册和登录。使用 CakeAdmin 插件 来轻松管理您的角色和用户。
配置
以下配置是可用的。所有配置都可以通过在您的 config/bootstrap.php
文件中使用 Configure::write()
来设置。
Users.fields
默认情况下,您将使用 email
和 password
进行注册和登录。当您想使用自己的字段,如 username
和 passwrd
时,可以使用以下方法
Configure::write('Users.fields', [
'username' => 'username',
'password' => 'passwrd'
]);
Users.email
有一些电子邮件配置
Users.email.from
- 定义发送者的数组。默认['admin@cakemanager.org' => 'Bob | CakeManager']
。Users.email.transport
- 要使用的传输方式。默认设置为default
。Users.email.afterRegister.subject
- 当用户注册时发送的电子邮件的主题。Users.email.afterForgot.subject
- 当用户忘记密码时发送的电子邮件的主题。
Users.defaultController
该插件有一个默认控制器,其中包含所有默认用户相关操作(登录、注销、重置、忘记)。有时您可能想使用自己的控制器。您可以通过将 Users.defaultController
设置为 false
来禁用默认的内置控制器。
Configure::write('Users.defaultController', false);
这样做时,插件的路由不会被设置,尝试访问控制器将失败,因为您将被重定向到上一个位置。
注意:此功能可以通过使用仅用于您的 API 的用户管理来很有帮助。
用户管理组件
用户管理组件默认处理您应用程序的认证。然而,此组件对于向您的系统添加用户相关操作也非常有用!通过调用登录函数($this->UserManager->login()
),您正在使用登录操作。对于
login()
- 登录用户。logout()
- 注销用户。activate($email, $requestKey)
- 激活用户。不要忘记传递变量。forgot
- 用户留下电子邮件地址以接收设置新密码的电子邮件。reset($email, $requestKey)
- 为用户创建新密码。不要忘记传递变量。
这些方法在您想自定义用户相关操作时非常有用。
注意:不要忘记将上述提到的
Users.defaultController
配置设置为false
!
CakeAdmin
该插件与CakeAdmin兼容!这意味着用户和角色可以在CakeAdmin插件的Admin面板中管理。
保持联系
如果您需要一些帮助或有关于此插件的想法,请随时在Gitter聊天。
欢迎提交Pull Requests!