asdfx/laravel-material-dashboard

v7.0.2 2020-06-09 17:16 UTC

This package is auto-updated.

Last update: 2021-09-09 20:43:45 UTC


README

此包提供了一种快速设置Material Dashboard与Laravel 5的方法。除了Laravel外,它没有其他要求或依赖,因此您可以立即开始构建您的管理面板。该包只提供了一种Blade模板,您可以扩展它,并提供高级菜单配置选项。还包括一个替换make:auth Artisan命令的版本,它使用Material Dashboard样式的视图而不是默认的Laravel视图。

  1. 安装
  2. 更新
  3. 用法
  4. 配置
    1. 菜单
  5. 覆盖样式
  6. 问题、疑问和拉取请求

1. 安装

  1. 使用composer安装此包

    composer require asdfx/laravel-material-dashboard
    
  2. 将服务提供者添加到config/app.php中的providers

    Laravel 5.5使用包自动发现,因此不需要您手动添加ServiceProvider

    Asdfx\LaravelMaterialDashboard\ServiceProvider::class,
  3. 发布公共资产

    php artisan vendor:publish --provider="Asdfx\\MaterialDashboard\\ServiceProvider" --tag=assets
    
  4. 发布配置

    php artisan vendor:publish --provider="Asdfx\\MaterialDashboard\\ServiceProvider" --tag=config
    

2. 更新

  1. 要更新此包,首先更新composer包

    composer update asdfx/laravel-material-dashboard
    
  2. 然后,使用--force标志发布公共资产以覆盖现有文件

    php artisan vendor:publish --provider="Asdfx\\LaravelMaterialDashboard\\ServiceProvider" --tag=assets --force
    

3. 用法

要使用模板,创建一个blade文件,并使用@extends('MaterialDashboard::dashboard')扩展布局。此模板提供以下部分

  • title:用于<title>标签
  • content_header:页面标题,位于内容上方
  • content:页面的全部内容
  • css:额外的样式表(位于<head>中)
  • js:额外的javascript(在</body>之前)

所有部分都是可选的。您的blade模板可能如下所示。

@extends('MaterialDashboard::admin')

@section('title', 'Dashboard')

@section('content_header')
    Dashboard
@stop

@section('content')
    <p>Welcome to this beautiful admin panel.</p>
@stop

@section('css')
    <link rel="stylesheet" href="/css/admin_custom.css">
@stop

@section('js')
    <script> console.log('Hi!'); </script>
@stop

注意,在Laravel 5.2或更高版本中,您还可以使用@stack指令为cssjavascript提供内容。

{{-- resources/views/admin/dashboard.blade.php --}}

@push('css')

@push('js')

现在,您只需像往常一样从您的控制器返回此视图。查看AdminLTE以了解如何为您的管理面板构建美丽的内容。

如果您想为未认证的视图使用Material Dashboard主题,您可以扩展未认证的视图

@extends('MaterialDashboard::unauthenticated')

当与Laravel的php artisan make:auth配合使用时,这很有用。

4. 配置

首先,发布配置文件

php artisan vendor:publish --provider="Asdfx\\MaterialDashboard\\ServiceProvider" --tag=config

现在,编辑config/laravel-material-dashboard.php以配置仪表板URL、标志、导航栏背景图像和菜单。所有配置选项都在注释中解释。然而,我想简要介绍menu配置。

4.1 菜单

您可以根据以下方式配置您的菜单

'menu' => [
        [
            'route' => 'admin.dashboard',
            'icon' => 'fa-tachometer',
            'text' => 'Dashboard',
        ],
        [
            'text' => 'Content Management',
            'links' => [
                [
                    'link' => '#',
                    'icon' => 'fa-file-text',
                    'text' => 'Can only see this if you can manage users',
                    'permissions' => [
                        'action' => 'manage',
                        'resource' => \App\User::class,
                    ],
                ],
                [
                    'route' => 'admin.users.edit',
                    'parameters' => 1,
                    'icon' => 'fa-file-text',
                    'text' => 'This will edit user id 1',
                ],
            ],
        ],
    ],

如果不提供链接或路由,菜单项可以充当菜单标题以分隔项。使用数组,您指定一个菜单项。textlinkroute是必需的属性。icon是可选的,您可以使用的是来自Font Awesome的图标。只需指定图标的名称,它就会出现在您的菜单项之前。

如果您想有条件地显示菜单项,请使用permissions选项。这集成到Laravel的Gate功能中。

'permissions' => [
    'action' => 'manage',
    'resource' => \App\User::class,
],

这是等效的

@can ('manage', \App\User::class)

5. 覆盖样式

当您使用SASS为Material Dashboard时,它会被包含并发布。

```
php artisan vendor:publish --provider="Asdfx\\MaterialDashboard\\ServiceProvider" --tag=assets
```

为了扩展Material Dashboard样式,请在您的编译脚本中包含 public/vendor/laravel-material-dashboard/scss/material-dashboard.scss,以便将其输出到 public/vendor/laravel-material-dashboard/css/material-dashboard.min.css

6. 问题、疑问和Pull Requests

您可以在 问题部分 报告问题并提问。请以 ISSUE: 开始您的报告,并以 QUESTION: 开始您的提问。

如果您有疑问,请先查看已关闭的问题。

要提交Pull Request,请首先fork此仓库,创建一个新分支,并在其中提交您的新/更新代码。然后从您的新分支打开Pull Request。有关更多信息,请参阅 此指南