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

相关推荐
淼淼爱喝水12 小时前
DVWA和Pikachu命令注入漏洞检测实验
安全·web安全·php·pikachu·dvwa
专注VB编程开发20年13 小时前
json和python元组,列表,字典对比
开发语言·python·json·php
怀旧,13 小时前
【Linux网络编程】15. Reactor 反应堆模式
linux·网络·php
Dylan的码园14 小时前
2026年免费远程控制软件哪个好?ToDesk向日葵UU远程免费版横评,不限次数不限时长
服务器·开发语言·php
dog25014 小时前
解析几何的力量(1)
服务器·开发语言·网络·php
号码认证服务15 小时前
如何让来电显示公司名代替陌生数字号码?企业号码认证开通指南
服务器·c语言·网络·经验分享·智能手机·云计算·php
一念春风15 小时前
QwenPaw(替代小龙虾)大模型
开发语言·php
是有头发的程序猿16 小时前
AI Agent自动化交易流程:1688定制交易API全链路开发实战教程(Python源码)
python·自动化·php
极梦网络无忧17 小时前
# 从零打造 Composer 依赖包:ThinkPHP 项目开发实战指南
php·composer
jerryinwuhan1 天前
基于各城市站点流量的复合功能比较
开发语言·php