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

相关推荐
TlSfoward10 小时前
抓包代理链路下的 TLS 指纹变化分析 TLSFOWARD抓包工具
数据库·爬虫·网络协议·搜索引擎·php
—Miss. Z—13 小时前
计算机二级MySQL——简单应用题(存储过程&存储函数)
数据库·oracle·php
故乡de云13 小时前
AWS 添加付款方式失败排查清单:卡片、银行风控与账号状态逐项定位
开发语言·php
梦梦代码精14 小时前
基于ThinkPHP6 + Vue3的家政预约系统全解析:从LBS定位到自动派单的完整实现
java·docker·开源·php·代码规范
郑州光合科技余经理15 小时前
家政O2O平台解析:从0搭建上门预约小程序解决方案
android·java·开发语言·前端·小程序·架构·php
lxw184491251416 小时前
PHP后端(CI框架方向)面试题库,分为基础必问、MySQL、Redis、工程运维、高阶加分、场景实操六大模块,适配该JD全部考点,附带标准答案
ci/cd·面试·php
郑州光合科技余经理16 小时前
家政预约小程序后端源码深度剖析:支付回调实战
java·开发语言·前端·git·小程序·架构·php
weixin_408099671 天前
2026 图片去水印 API 接口完全指南:一键去除图片水印(附 Python/Java/PHP/C# 示例)
java·python·php·图片处理·api调用·图片去水印·石榴智能
王莎莎-MinerU1 天前
MCP 解决的是工具接入,科研 Agent 还缺的是科学证据接口标准化
开发语言·网络·人工智能·深度学习·pdf·c#·php
AC赳赳老秦2 天前
OpenClaw 采集任务日志审计:全程记录采集行为,满足合规溯源与企业审计要求
java·大数据·python·数据挖掘·数据分析·php·openclaw