Как уже было указано, мы добавляем AppServiceProvider.php в App / Providers.
use Illuminate\Support\Facades\Schema; // add this
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
Schema::defaultStringLength(191); // also this line
}
Вы можете увидеть более подробную информацию в ссылке ниже (поиск "Длина индекса и MySQL / MariaDB")
https://laravel.com/docs/5.5/migrations
НО ХОРОШО, ЭТО не то, о чем я все опубликовал! дело даже в том, что при выполнении вышеизложенного вы, скорее всего, получите другую ошибку (когда вы запускаете php artisan migrate
команду и из-за проблемы длины, операция, скорее всего, застрянет в середине. решение находится ниже , и, вероятно, создана пользовательская таблица). без всего остального или не совсем корректно)
надо откатиться назад . откат по умолчанию не будет работать. потому что операция по миграции не понравилась закончить. Вам необходимо удалить новые созданные таблицы в базе данных вручную.
мы можем сделать это используя тинкер, как показано ниже:
L:\todos> php artisan tinker
Psy Shell v0.8.15 (PHP 7.1.10 — cli) by Justin Hileman
>>> Schema::drop('users')
=> null
У меня самого была проблема с таблицей пользователей.
после этого ты можешь идти
php artisan migrate:rollback
php artisan migrate