• laravel-admin php artisan admin:install报错问题解决办法


    问题描述:根据laravel-admin官方文档安装步骤,执行:php artisan admin:install 安装时报错。

    其实是数据库创建特殊字符过长问题,laravel 5.4 改变了默认的数据库字符集,现在utf8mb4包括存储emojis支持。如果你运行MySQL v5.7.7或者更高版本,则不需要做任何事情。

    当你试着在一些MariaDB或者一些老版本的的MySQL上运行 migrations 命令时,你可能会碰到下面这个错误:

    D:wwwrootwww.test.com>php artisan admin:install
    Migration table created successfully.
    
    In Connection.php line 664:
    
      SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes (S
      QL: alter table `users` add unique `users_email_unique`(`email`))
    
    
    In Connection.php line 458:
    
      SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes

    解决方案在appProvidersAppServiceProvider.php添加默认值,需要删除数据库migrations、users表。重新执行:php artisan admin:install

    <?php
    
    namespace AppProviders;
    
    use IlluminateSupportServiceProvider;
    use IlluminateSupportFacadesSchema; //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()
        {
            //
        }
    }

    参考这个issue:https://github.com/z-song/laravel-admin/issues/1541

  • 相关阅读:
    26个精选的JavaScript面试问题
    用js实现随机选取10–100之间的10个数字,存入一个数组,并排序
    小程序布局中class='container'的bug
    PHP接收数据数据包的几个方式
    LINUX命令
    VMware的下载安装
    php中Sessions
    php中Cookies
    php文件上传
    php文件处理
  • 原文地址:https://www.cnblogs.com/niuben/p/13087539.html
Copyright © 2020-2023  润新知