Laravel-Admin 语言改为中文(2)

本文解决了Laravel-Admin后台管理中两个问题。头像上传时错误。其次自定义面包屑导航实现方法,提供了完整的配置代码和实现步骤,帮助开发者快速解决这两个后台管理中的常见问题。

目录

管理员编辑头像

问题原因

添加磁盘配置

清除配置缓存

修改后台面包屑导航

如何生成面包屑导航

创建导航视图文件

添加面包屑导航

清除缓存

总结


管理员编辑头像

在后台管理员管理中修改管理员头像时提示:

bash 复制代码
Config error.
Disk [admin] not configured, please add a disk config in `config/filesystems.php`.
问题原因

laravel-admin 在配置文件中指定使用 admin 磁盘来存储上传的文件( config/admin.php 第 156 行),但是在 config/filesystems.php 中没有配置这个磁盘,导致上传图片时出现 "Config error. Disk admin not configured" 错误。

添加磁盘配置

在文件 config/filesystems.php中

php 复制代码
       'admin' => [
            'driver' => 'local',
            'root' => public_path('uploads'),
            'visibility' => 'public',
            'url' => env('APP_URL').'/uploads',
        ],
清除配置缓存

执行 php artisan config:clear 使新配置立即生效。

修改后台面包屑导航

如何生成面包屑导航

laravel-admin 会自动根据 URL 路径生成面包屑导航。

文件是:vendor\encore\laravel-admin\resources\views\content.blade.php

面包屑导航在第 43-49 行使用了 ucfirst(Request::segment($i)) 。

创建导航视图文件

需要创建一个自定义的面包屑导航的 Content 视图,以覆盖原有视图;

创建resources/views/vendor/admin/content.blade.php文件,

内容如下:

php 复制代码
@extends('admin::index', ['header' => strip_tags($header)])

@section('content')
    <section class="content-header">
        <h1>
            {!! $header ?: trans('admin.title') !!}
            <small>{!! $description ?: trans('admin.description') !!}</small>
        </h1>

        <!-- breadcrumb start -->
        @if ($breadcrumb)
        <ol class="breadcrumb" style="margin-right: 30px;">
            <li><a href="{{ admin_url('/') }}"><i class="fa fa-dashboard"></i> {{__('admin.Home')}}</a></li>
            @foreach($breadcrumb as $item)
                @if($loop->last)
                    <li class="active">
                        @if (\Illuminate\Support\Arr::has($item, 'icon'))
                            <i class="fa fa-{{ $item['icon'] }}"></i>
                        @endif
                        {{ $item['text'] }}
                    </li>
                @else
                <li>
                    @if (\Illuminate\Support\Arr::has($item, 'url'))
                        <a href="{{ admin_url(\Illuminate\Support\Arr::get($item, 'url')) }}">
                            @if (\Illuminate\Support\Arr::has($item, 'icon'))
                                <i class="fa fa-{{ $item['icon'] }}"></i>
                            @endif
                            {{ $item['text'] }}
                        </a>
                    @else
                        @if (\Illuminate\Support\Arr::has($item, 'icon'))
                            <i class="fa fa-{{ $item['icon'] }}"></i>
                        @endif
                        {{ $item['text'] }}
                    @endif
                </li>
                @endif
            @endforeach
        </ol>
        @elseif(config('admin.enable_default_breadcrumb'))
        <ol class="breadcrumb" style="margin-right: 30px;">
            <li><a href="{{ admin_url('/') }}"><i class="fa fa-dashboard"></i> {{__('admin.Home')}}</a></li>
            @php
                $segments = Request::segments();
                $uri = '';
            @endphp
            @for($i = 0; $i < count($segments); $i++)
                @php
                    $uri .= '/' . $segments[$i];
                    $segmentKey = strtolower($segments[$i]);
                    $translatedTitle = trans("admin.menu_titles.{$segmentKey}");
                    $displayTitle = ($translatedTitle && $translatedTitle !== "admin.menu_titles.{$segmentKey}") 
                        ? $translatedTitle 
                        : ucfirst($segments[$i]);
                @endphp
                @if($i == count($segments) - 1)
                    <li class="active">{{ $displayTitle }}</li>
                @else
                    <li><a href="{{ admin_url($uri) }}">{{ $displayTitle }}</a></li>
                @endif
            @endfor
        </ol>
        @endif

        <!-- breadcrumb end -->

    </section>

    <section class="content">

        @include('admin::partials.alerts')
        @include('admin::partials.exception')
        @include('admin::partials.toastr')

        @if($_view_)
            @include($_view_['view'], $_view_['data'])
        @else
            {!! $_content_ !!}
        @endif

    </section>
@endsection
添加面包屑导航

在resources/lang/zh-CN.php中增加新的翻译,内容如下:

清除缓存
bash 复制代码
php artisan view:clear

总结

本文解决了Laravel-Admin后台管理中两个问题。头像上传时错误。其次自定义面包屑导航实现方法,提供了完整的配置代码和实现步骤,帮助开发者快速解决这两个后台管理中的常见问题。

相关推荐
DigitalOcean7 天前
Laravel 开发者已在 DigitalOcean 上开通超过 10 万台服务器
前端·laravel
两个人的幸福9 天前
Windows 桌面应用自研 PHP 队列(下):完整代码与六大工程化优化
php
BingoGo11 天前
PHP 泛型之殇 泛型 RFC 提案被拒绝
后端·php
JaguarJack11 天前
PHP 泛型之殇 泛型 RFC 提案被拒绝
后端·php
用户30745969820712 天前
PHP 扩展——从入门到理解
php
鹏仔先生13 天前
拷贝漫画APP下载页PHP程序,后台带免费AI写作
php
云水一下13 天前
从零开始学 PHP 系列(一):PHP 的前世今生与开发环境搭建
开发语言·php
xingpanvip13 天前
星盘接口开发文档:本命盘接口指南
android·开发语言·css·php·lua
酉鬼女又兒13 天前
零基础入门计算机网络运输层:端到端通信核心作用、端口号分类规则、复用分用工作机制及UDP与TCP协议全方位对比详解
网络·网络协议·tcp/ip·计算机网络·考研·udp·php
dog25013 天前
不要再继续优化 TCP
网络协议·tcp/ip·php