oenstrom/user

用于Anax框架的用户模块。

1.0.6 2017-10-23 22:34 UTC

This package is not auto-updated.

Last update: 2024-09-29 04:36:51 UTC


README

Build Status CircleCI Build Status Scrutinizer Code Quality Code Coverage

实现用户和管理功能的Anax用户模块。

安装

使用composer安装模块,然后将其集成到您的Anax安装中。

使用composer安装

composer require oenstrom/user

自动配置

您可以使用makefile自动配置大多数模块。makefile位于vendor/oenstrom/user/,确保在运行make命令之前您位于该目录。

# cd vendor/oenstrom/user
make install-module

手动配置

如果您想手动复制文件,可以从Anax安装的根目录使用以下命令进行。

rsync -a vendor/oenstrom/user/config/di/* config/di/
rsync -a vendor/oenstrom/user/config/route/* config/route/
rsync -a vendor/oenstrom/user/config/database.php config/
rsync -a vendor/oenstrom/user/view/user view/

设置数据库

执行SQL文件sql/setup.sql,创建一个名为anaxuser的新数据库和一个包含两个用户的新表:admin:admindoe:doe。如果您已经有数据库,只需编辑SQL文件或使用下面的SQL代码。

CREATE TABLE User (
    `id`        INTEGER PRIMARY KEY AUTO_INCREMENT NOT NULL,
    `role`      VARCHAR(20) NOT NULL DEFAULT 'user',
    `username`  VARCHAR(80) UNIQUE NOT NULL,
    `email`     VARCHAR(255) UNIQUE NOT NULL,
    `password`  VARCHAR(255) NOT NULL,
    `created`   TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    `deleted`   DATETIME
) ENGINE INNODB CHARACTER SET utf8 COLLATE utf8_swedish_ci;

INSERT INTO User(role, username, email, password) VALUES
('admin', 'admin', 'admin@admin.com', '$2y$10$Njbsb6l8TCLdvHUcS/65IOcEVARQGICBYqDqx8843aPgpVdlYedrC'),
('user', 'doe', 'user@user.com', '$2y$10$26KgRWjs3F654.yHpsYYDO4sd86ksNN1E8zpQ2yHMA/yx33tV/ACq');

现在更新文件config/database.php,包含您的SQL服务器的设置和凭据。

测试

完成上述所有步骤后,您可以使用以下路由进行测试。

user/register               Register a new account
user/login                  Login with your account
user/logout                 Logout from your account

# Protected from unauthenticated users
user/profile                Display the user profile

# Protected from unauthorized users
user/admin/users            Display all users
user/admin/users/add        Create a new user
user/admin/update/:id       Update an user with the provided id
user/admin/delete/:id       Delete an user with the provided id

许可证

本软件采用MIT许可证。


  Copyright (c) 2017 Olof Enström (olof.enstrom@gmail.com)