acacha / users
使用 Laravel 和 adminlte-laravel 进行用户管理
Requires
- php: ~5.6|~7.0
- acacha/stateful-eloquent: dev-master
- laravel/passport: ^4.0
- predis/predis: ^1.1
- pulkitjalan/google-apiclient: ^3.1
- spatie/laravel-permission: ^2.1
- venturecraft/revisionable: ^1.28
Requires (Dev)
- franzl/studio: ^0.11.2
- phpunit/phpunit: ~4.0||~5.0
- squizlabs/php_codesniffer: ^2.3
This package is auto-updated.
Last update: 2024-09-13 03:16:41 UTC
README
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
贡献
有关详细信息,请参阅 CONTRIBUTING 和 CONDUCT。
安全性
如果您发现任何安全问题,请通过电子邮件 sergiturbadenas@gmail.com 而不是使用问题跟踪器。
致谢
待办事项:JavaScript/Npm 依赖项
- adminlte-vue
- password-generator https://npmjs.net.cn/package/password-generator
许可证
MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件。