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

相关推荐
阿洛学长6 小时前
最新PHPStudy安装教程(小皮V8.1)
php
68岁扶墙肾透7 小时前
Edu实战-某高校信息系统代码审计
安全·web安全·网络安全·php
QQ_51100828520 小时前
uniapp微信小程序网上饰品商城售卖系统php python物流
微信小程序·uni-app·php
码云骑士1 天前
为何VMware上云之路充满挑战?
运维·服务器·php
vickycheung31 天前
RK182X 如何在 RK3588 上进行应用测试
开发语言·php
taocarts_bidfans1 天前
后端开发实战:外贸独立站询盘接口防刷与数据安全优化方案
php·独立站·外贸独立站·taoify
marsh02061 天前
60 openclaw与物联网:连接物理世界的智能应用
开发语言·物联网·青少年编程·php·技术美术
zzqssliu1 天前
Taocarts库存锁定机制优化:彻底解决跨境代购商品超卖问题
java·linux·javascript·php
dog2501 天前
科斯定理与平坦随机网络的自然秩序
开发语言·网络·php
AI设计小站1 天前
GPT Image2国内可用方案实测:创客贴AI生成+分层编辑能力解析
人工智能·gpt·php