在Facade.php第237行中:调用未定义的方法Illuminate \ Database \ Schema \ MySqlBuilder :: defaultStringLenght()

时间:2019-05-11 00:10:15

标签: laravel artisan migrate

我正在尝试通过命令在Laravel5.8中迁移MySQL表

$ php artisan migrate

我收到此错误

In Facade.php line 237: 
    Call to undefined method 
    Illuminate\Database\Schema\MySqlBuilder::defaultStringLenght()

我已经在AppServiceProvider.php文件中设置了  use Illuminate\Support\Facades\Schema;
defaultStringLenght(191); // boot() method

Schema::create('posts', function (Blueprint $table) {
      $table->increments('id');  
      $table->string('title'); 
      $table->mediumText('body');
      $table->timestamps(); 
    });

2 个答案:

答案 0 :(得分:3)

首先,您需要正确调用该方法并检查Length的拼写。

 public function boot()
    {
        Schema::defaultStringLength(191);
    }

您还需要导入Schema Facade

use Illuminate\Support\Facades\Schema;

答案 1 :(得分:0)

在app \ Providers \ AppServiceProvider.php中,您需要使用

use Illuminate\Support\Facades\Schema; 

,然后在启动功能中需要编写 架构:: defaultStringLength(191); 并且您的启动功能将如下所示

public function boot()
    {
        Schema::defaultStringLength(191);
    }