naffiq/yii2-bridge

为爱好者提供的简单管理面板

安装数量: 1,513

依赖项: 1

建议者: 0

安全: 0

星标: 4

关注者: 3

分支: 3

开放问题: 9

类型:项目


README

Yet another admin panel

简要介绍和俄语教程

Bridge 为您提供简单的内容管理系统,该系统利用了经过最佳生产测试的组件和插件为 Yii2。

安装

通过运行以下命令将其添加为 Composer 依赖项

$ composer require naffiq/yii2-bridge

 在运行迁移之前,请确保配置了模块(下面有说明)。

配置

将模块声明添加到您的 web 配置文件中

<?php

return [
    // ... your config
    'modules' => [
        'admin' => [
            'class' => '\naffiq\bridge\BridgeModule',
            // Add your projects modules here to keep right routing.
            'modules' => [
                'customModule' => ['class' => '\app\modules\your\CustomModule']
            ],
            // Add menu item of your content management module to menu
            'menu' => [
                [
                    'title' => 'Content',
                    'url' => ['/admin/content/default/index'],
                    'active' => ['module' => 'content'],
                    'icon' => 'list'
                ]
            ],
            // Alternatively you can define different menu items for different
            // roles. In that case it will override default menu items, such as
            // settings, users and dashboard
            'composeMenu' => function ($user, $roles, $authManager) {
                 /**
                  * @var \yii\web\User $user 
                  * @var \Da\User\Model\Role[] $roles
                  * @var \Da\User\Component\AuthDbManagerComponent $authManager 
                  */
                 if (isset($roles['admin'])) {
                     return require __DIR__ . '/menu-admin.php';
                 }
                 if ($user->can('editor')) {
                     return require __DIR__ . '/menu-editor.php';
                 }
                 if (in_array($user->id, $authManager->getUserIdsByRole('manager'))) {
                     return require __DIR__ . '/menu-manager.php';
                 }
                 // Or any other available method
                 
                 return __DIR__ . '/menu-default.php';
            }
        ]
    ],
    'bootstrap' => [        
        'admin' // add module id to bootstrap for proper aliases and url routes binding
    ]
];

并且对于控制台配置,以便运行迁移

<?php
return [
    // ... your config
    'modules' => [
        'admin' => ['class' => '\naffiq\bridge\BridgeModule']
    ],
    'bootstrap' => [        
        'admin' // add module id to bootstrap for proper aliases and url routes binding
    ]
]; 

设置

在安装和配置设置(包括数据库)之后,您应该在 vendor 文件夹中有一个安装可执行文件。您可以使用单个命令运行所有必需的迁移

$ ./vendor/bin/bridge-install

警告!此命令带有 --interactive=0 标志,这意味着它不会询问确认。

用法

运行上述每个步骤后,您应该在 /admin 路由上运行您的管理面板。剩下的只是运行创建用户的命令。

创建第一个用户

运行以下命令以生成用户

$ php yii user/create EMAIL USERNAME PASSWORD ROLE 

因此,创建具有管理员角色的管理面板用户的正确命令是

$ php yii user/create admin@sitename.kz admin PASSWORD admin

Gii

桥接提供的 Gii 包含一些对基本 gii 的改进。当生成以 imagefile 结尾的 db 字段时,它会自动添加相应的上传行为。您可以通过在生成器界面中单击复选框来关闭这些行为。

它还具有 Bridge CRUD 生成器,该生成器将生成必要的字段输入,并将其优雅地显示在索引表中。

开发和测试

配置您的 .env(参考 .env.example)。使用以下命令运行迁移

$ ./bin/bridge-install-dev

Bridge 附带了一个位于 bin 文件夹中的控制台应用程序,用于开发和测试目的。您可以使用以下命令简单地执行它

$ php bin/yii.php CONTROLLER/ACTION [params]

使用以下命令测试包

$ ./vendor/bin/phpunit