stronglab/yii2-dashboard

StrongLab Dashboard for apps

1.1.9 2016-03-17 00:07 UTC

This package is not auto-updated.

Last update: 2024-05-08 22:26:58 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License

Yii2 Dashboard

Создание простой панели управления для Yii2

Установка

$ composer require --prefer-dist stronglab/yii2-dashboard "*"

Или добавить в composer.json

{
    "require": {
        "stronglab/yii2-dashboard": "*"
    }
}

Файл конфига проекта config/web.php

'modules' => [
    'dashboard' => [
                'class' => 'stronglab\dashboard\Module',
                'roles' => ['@'], // необязатьельный параметр, по-умолчанию доступ всем гостям
                'column' => 2, // необязательный параметр, количество столбцов в панели (возможные значения: 1-3)
                'modules' => [
                    // список модулей, в которых будет производиться поиск файла dashboard.json
                    'moduleID',
                    'moduleID',
                    ...
                    'moduleID' => [
                        'jsonPath' => 'config/dashboard/myconf.json', // отдельный путь к файлу настроек панели, прописывается от директории приложения
                    ],
                ],
            ],
],

Далее обновляем composer и можно приступать к настройке модулей

Настройка

В корневой директории каждого модуля необходимо создать файл dashboard.json, который должен иметь следующий формат:

{
    "name": "Dasboard simple config",
    "title": "My module",
    "routes": [
        {
            "route": "default/index",
            "title": "List"
        },
        {
            "route": "default/captcha",
            "title": false
        },
        {
            "route": "default/admin",
            "title": "Admin",
            "icon": "pencil"
        }
    ]
}

Описание формата:

  • name - обязательный параметр, описание модуля
  • title - необязательный параметр, в случае отсутствия используется параметр name
  • routes - обязательный параметр, содержит список маршрутов, которые перехватываются модулем и выводятся в панели

Описание блока routes:

  • route - обязательный параметр, необходимо вписывать маршруты без указания ID модуля
  • title - обязательный параметр, необходим для отображения анкора ссылки в панели (если установлено false, то маршрут не выводится в панели)
  • icon - необязательный параметр, иконка в панели. Используются иконки Glyphicons. В параметре icon необходимо вписать только название иконки (например, вместо "glyphicon-pencil" используем "pencil")

Пример файла dashboard.json для стандартного CRUD

{
    "name": "Example",
    "title": "Example Header",
    "routes": [
        {
            "route": "default/index",
            "title": "Список"
        },
        {
            "route": "default/create",
            "title": "Добавить"
        },
        {
            "route": "default/view",
            "title": false
        },
        {
            "route": "default/update",
            "title": false
        },
        {
            "route": "default/delete",
            "title": false
        }
    ]
}

Особенности

Вы можете использовать панель для отображения маршрутов вне модулей. Для этого необходимо создать файл dashboard.json в корневой директории приложения.

Created by strong aka Aleksand Demchenko