前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于Laravel 5.8.*(laravel-admin 1.x)的一些问题以及解决办法汇总

关于Laravel 5.8.*(laravel-admin 1.x)的一些问题以及解决办法汇总

作者头像
友儿
发布2022-09-11 14:26:44
1.3K0
发布2022-09-11 14:26:44
举报
文章被收录于专栏:友儿友儿

关于Laravel 5.8.*(laravel-admin 1.x)的一些问题以及解决办法汇总

时区问题(默认时区UTC-协调世界时)

**解决办法:**把config/app.php中的'timezone' => 'UTC'修改为'timezone' => 'PRC'或者'timezone' => 'Asia/Shanghai'即可

设置中文语言包

代码语言:javascript
复制
    composer require laravel-lang/lang:~4.0
  • 复制vendor/laravel-lang/lang/src/zh-CN到resources/lang/zh-CN
  • 把config/app.php中的'locale' => 'en'修改为'locale' => 'zh-CN'
  • 如果你要用faker去填充测试数据,请修改'locale' => 'en'修改为'locale' => 'zh_CN' (vendor/fzaninotto/faker/src/Faker/Provider/zh_CN)

出现SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes (SQL: alter tableusersadd uniqueusers_email_unique(email))问题 在app\Providers\AppServiceProvider.php添加默认值

代码语言:javascript
复制
   <?php
        namespace App\Providers;
        
        use Illuminate\Support\ServiceProvider;
        use Illuminate\Support\Facades\Schema; //add fixed sql
        
        class AppServiceProvider extends ServiceProvider
        {
            /**
             * Bootstrap any application services.
             *
             * @return void
             */
            public function boot()
            {
                Schema::defaultStringLength(191); //add fixed sql
            }
        
            /**
             * Register any application services.
             *
             * @return void
             */
            public function register()
            {
                //
            }
    }

laravel-admin 表单 $form->image('pic', __('Pic'));上传图片路径问题。 在config/admin.php上传配置项中

代码语言:javascript
复制
'upload' => [
  
          //配置项 config/filesystem.php
          'disk' => 'admin',
  
          //上传图片和文件的目录设置
          'directory' => [
              'image' => 'images',
              'file'  => 'files',
          ],
      ],

可以看出来配置项在config/filesystem.php中 在config/filesystems.php中追加如下

代码语言:javascript
复制
     'disks' => [     
           ...
            'admin' => [
                'driver' => 'local',
                'root' => storage_path('app/public'),//上传路径(图片上传到/storage/app/public/images;文件上传到/storage/app/public/files)
                'url' => env('APP_URL').'/storage',//访问路径(图片访问路径/public/storage/images;文件访问路径/public/storage/file)
                'visibility' => 'public',
            ],
            ...
        ],

我们需要执行一下软连接php artisan storage:link, 这个命令会帮我们把/storage/app/public/*映射到/public/storage/*, 这样我们就可以直接通过根目录下的storage/* 访问文件。

在laravel-admin 中使用$form->editor('content',__('Content')); 报错(laravel-admin Field type [editor] does not exist.)问题。 首先把app/admin中的bootstrap.php 里边的Encore\Admin\Form::forget(['map', 'editor']);注释掉,意思就是使用这个组件。 如果依然报错,则可能需要安装laravel-admin-ext/wang-editor,github地址

代码语言:javascript
复制
  安装
   // laravel-admin 1.x
   composer require "laravel-admin-ext/wang-editor:1.*"
   
   // laravel-admin 2.x
   composer require laravel-admin-ext/wang-editor
   然后
   
   php artisan vendor:publish --tag=laravel-admin-wangEditor
   配置
   在config/admin.php文件的extensions,加上属于这个扩展的一些配置
   
       'extensions' => [
   
           'wang-editor' => [
           
               // 如果要关掉这个扩展,设置为false
               'enable' => true,
               
               // 编辑器的配置
               'config' => [
                   
               ]
           ]
       ]
   编辑器的配置可以到wangEditor文档找到,比如配置上传图片的地址上传图片
   
       'config' => [
           // `/upload`接口用来上传文件,上传逻辑要自己实现,可参考下面的`上传图片`
           'uploadImgServer' => '/upload'
       ]
   使用
   在form表单中使用它:
   
   $form->editor('content');
   上传图片
   图片上传默认使用base64格式化后与文本内容一起存入数据库,如果要上传图片到本地接口,那么下面是这个接口对应的action代码示例:
   
   use Illuminate\Http\Request;
   use Illuminate\Support\Facades\Storage;
   
   public function upload(Request $request)
   {
       $urls = [];
   
       foreach ($request->file() as $file) {
           $urls[] = Storage::url($file->store('images'));
       }
   
       return [
           "errno" => 0,
           "data"  => $urls,
       ];
   }
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关于Laravel 5.8.*(laravel-admin 1.x)的一些问题以及解决办法汇总
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档