acacha/users

使用 Laravel 和 adminlte-laravel 进行用户管理

dev-master / 1.0.x-dev 2017-12-18 15:38 UTC

This package is auto-updated.

Last update: 2024-09-13 03:16:41 UTC


README

Latest Version on Packagist Total Downloads Monthly Downloads Daily Downloads Software License Build Status Coverage Status Quality Score Total Downloads StyleCI Code Coverage Dependency StatusDependency Status Node.js

Acacha users 是一个 Laravel 包,为您的 Laravel 应用添加用户管理支持。

安装

通过 Composer,请首先创建一个新的 Laravel 项目

laravel new laravel_with_users
cd laravel_with_users

使用以下命令安装 adminlte-laravel 模板

adminlte-laravel install

然后使用以下命令安装此 Laravel 包

composer require acacha/users

现在使用以下命令安装 JavaScript Vue 组件

npm install --save acacha-users

在 Vue 安装完成后,修改 app.js 包,添加 acacha-users Vue 组件

//Acacha Users management components
require('users-bootstrap');

现在编译

npm install
npm run dev

安装 Spatie Laravel Permission 包

composer require spatie/laravel-permission
php artisan vendor:publish --provider="Spatie\Permission\PermissionServiceProvider" --tag="migrations"
php artisan vendor:publish --provider="Spatie\Permission\PermissionServiceProvider" --tag="config"
php artisan migrate

配置 App\User,添加以下特质

class User extends Authenticatable
{
    use Notifiable, HasRoles, HasApiTokens, ExposePermissions, RevisionableTrait,HasUserMigrations;

也使用向导安装 spatie/laravel-menu

php artisan adminlte:menu

使用 Artisan 的 boot 方法运行迁移和其他常见首次执行任务

llum boot

最后,确保 Laravel Passport 已安装并配置。Composer 包是依赖项,因此无需显式安装,但请确保将 CreateFreshApiToken 中间件添加到 Http/Kernel.php 文件中

protected $middlewareGroups = [
        'web' => [
        ...
        \Laravel\Passport\Http\Middleware\CreateFreshApiToken::class,
        ],

并将身份验证配置更改为使用 passport

'guards' => [
        ...
        'api' => [
            'driver' => 'passport',
            'provider' => 'users',
        ],
    ],

开发环境安装

通过 Composer,请首先创建一个新的 Laravel 项目

laravel new laravel_with_users
cd laravel_with_users

使用以下命令安装 adminlte-laravel 模板

adminlte-laravel install

在您的系统上安装 Studio (https://github.com/franzliedke/studio) 或使用 Composer 路径仓库 (https://getcomposer.org.cn/doc/05-repositories.md#path)

使用 Composer 路径仓库,在 composer.json 文件中 require 部分之前添加

"repositories": [
        {
            "type": "path",
            "url": "./users"
        },
        {
            "type": "path",
            "url": "./users-ebre-escool-migration"
        }
    ],

创建 users 和 users-ebre-escool-migration 文件夹,并将包放入其中(您也可以克隆它)

https://github.com/acacha/users
https://github.com/acacha/users-ebre-escool-migration

然后使用以下命令安装此 Laravel 包

composer require acacha/stateful-eloquent:dev-master
composer require acacha/users:dev-master
composer require scool/ebre_escool_model:dev-master
composer require acacha/users-ebre-escool-migration:dev-master

现在配置 npm 依赖项。修改 webpack.mix.js 文件,添加

  .js .....
  .sourceMaps()
  .webpackConfig({
    resolve: {
      modules: [
        path.resolve(__dirname, './users/resources/assets/js'),
        path.resolve(__dirname, './users-ebre-escool-migration/resources/assets/js'),
        path.resolve(__dirname, 'node_modules')
      ]
    }
  })

使用 Laravel Mix/webpack 编译 JavaScript 包

npm install
npm run dev

要求

  • Laravel
  • Spatie Laravel permission 包
  • Acacha AdminLTE Laravel 模板
  • JavaScript npm 包
    • Vue
    • Axios
    • adminlte-vue
    • vuetable-2
    • password-generator
    • vue-events (待迁移到 Vuex Store!)
    • vue-scrollto

Vuetable-2 与 transform-runtime 存在问题(参见 http://acacha.org/mediawiki/Vuetable2

npm install --save-dev babel-plugin-transform-runtime babel-preset-stage-2

测试

将套件添加到 phpunit.xml 文件中

<testsuite name="Users">
    <directory suffix="Test.php">./users/tests/Feature</directory>
</testsuite>
<testsuite name="UsersEbreEscoolMigration">
    <directory suffix="Test.php">./users-ebre-escool-migration/tests/Feature</directory>
</testsuite>

并运行 phpunit。

使用

$skeleton = new Acacha\Users();
echo $skeleton->echoPhrase('Hello, League!');

变更日志

有关最近更改的更多信息,请参阅 CHANGELOG

测试

$ composer test

贡献

有关详细信息,请参阅 CONTRIBUTINGCONDUCT

安全性

如果您发现任何安全问题,请通过电子邮件 sergiturbadenas@gmail.com 而不是使用问题跟踪器。

致谢

待办事项:JavaScript/Npm 依赖项

许可证

MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件