• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    解决在laravel中auth建立时候遇到的问题

    当你使用auth做用户登录注册的时候,会很方便,但是你在做数据库迁移的时候可能会遇到一个问题

    $ php artisan migrate
    Migration table created successfully.
    
    
    
     [Illuminate\Database\QueryException]
     SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was t
     oo long; max key length is 767 bytes (SQL: alter table `users` add unique `
     users_email_unique`(`email`))
    
     [PDOException]
     SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was t
     oo long; max key length is 767 bytes
    

    不要慌,这里说的是你的数据库迁移完成了,蛋疼的是这里有一个报错,会使你在接下来项目中后面的迁移操作继续报错。

     [Illuminate\Database\QueryException]
     SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' alre
     ady exists (SQL: create table `users` (`id` int unsigned not null auto_incr
     ement primary key, `name` varchar(191) not null, `email` varchar(191) not n
     ull, `password` varchar(191) not null, `remember_token` varchar(100) null,
     `created_at` timestamp null, `updated_at` timestamp null) default character
     set utf8mb4 collate utf8mb4_unicode_ci)
    
     [PDOException]
     SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' alre
     ady exists
    

    解决方案如下:

    索引长度 MySQL / MariaDB#

    Laravel 默认使用 utf8mb4 字符,包括支持在数据库存储「表情」。如果你正在运行的 MySQL release 版本低于5.7.7 或 MariaDB release 版本低于10.2.2 ,为了MySQL为它们创建索引,你可能需要手动配置迁移生成的默认字符串长度,你可以通过调用

    项目/app/Providers/AppServiceProvider.php 中的 Schema::defaultStringLength 方法来配置它:

    use Illuminate\Support\Facades\Schema;
     
    /**
     * 引导任何应用程序服务。
     *
     * @return void
     */
    public function boot()
    {
     Schema::defaultStringLength(191);
    }

    或者你可以为数据库开启 innodb_large_prefix 选项,有关如何正确开启此选项的说明请查阅数据库文档。

    以上这篇解决在laravel中auth建立时候遇到的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

    您可能感兴趣的文章:
    • 解决Laravel5.2 Auth认证退出失效的问题
    • 解决laravel5中auth用户登录其他页面获取不到登录信息的问题
    • Laravel的Auth验证Token验证使用自定义Redis的例子
    • laravel实现Auth认证,登录、注册后的页面回跳方法
    • Laravel 自带的Auth验证登录方法
    • laravel 使用auth编写登录的方法
    • Laravel框架Auth用户认证操作实例分析
    上一篇:使用 PHP Masked Package 屏蔽敏感数据的实现方法
    下一篇:在Laravel中使用GuzzleHttp调用第三方服务的API接口代码
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    解决在laravel中auth建立时候遇到的问题 解决,在,laravel,中,auth,建立,