从 Laravel 5.5 更新到 6

Posted

技术标签:

【中文标题】从 Laravel 5.5 更新到 6【英文标题】:Update from Laravel 5.5 to 6 【发布时间】:2020-03-28 17:43:23 【问题描述】:

我正在尝试将 Laravel5.5 项目更新为 6。 我尝试的是首先描述包更新

"php": "^7.2",
"ext-SimpleXML": "^7.3",
"barryvdh/laravel-ide-helper": "^2.6",
"doctrine/dbal": "^2.10",
"fideloper/proxy": "^4.0",
"jeroennoten/laravel-adminlte": "^2.0",
"laravel/framework": "^6.0",
"laravel/tinker": "~1.0",
"laravelcollective/html": "^6.0",
"maatwebsite/excel": "^3.1",
"laravel/ui": "^1.1",
"phpoffice/phpspreadsheet": "^1.9",
"phpoffice/phpexcel": "dev-master"

下一个

composer update

我收到错误

调用未定义函数 str_slug()

所以安装这个库

composer require laravel/helpers

然后这个错误就出来了

JeroenNoten \ LaravelAdminLte \ ServiceProvider :: 类,未找到

重装adminLTE没用,注释掉重装也没用,卡住了,求帮助

我需要帮助

【问题讨论】:

您为 adminlte 软件包使用了错误的服务提供商。其实你不需要在 app.php 中添加它的服务提供者,Laravel 会自动加载它。 @EliasSoares 我知道它是自动添加的,所以我试了一下,但没有用 “它不起作用”,什么不起作用?实际发生了什么?您对会发生什么的预期是什么? @lagbox 错误内容没有变化 你评论了什么? 【参考方案1】:

点击这里解决这个错误:Call to undefined function str_slug()


删除config/app.php文件中的空间:

'providers' => [

    ....

    JeroenNoten\LaravelAdminLte\ServiceProvider::class,

],

只要运行这个命令,它可以自动将所有配置添加到你的项目中:

composer require jeroennoten/laravel-adminlte

更多关于jeroennoten/laravel-adminlte的信息

【讨论】:

根据你提到的composer require jeroennoten/laravel-adminlte。它升级到最新版本。我不想要最新版本,我想要"jeroennoten/laravel-adminlte": "^2.0" 怎么办?我也遇到了同样的错误JeroenNoten \ LaravelAdminLte \ ServiceProvider :: class, not found【参考方案2】:

打开你项目的composer.json文件(Composer的配置文件),修改Laravel框架。 (Notice the caret, Laravel 6 makes use of semantic versioning scheme).

建议您先将项目升级到5.8,然后再升级到v6

接下来,保存您的 composer.json 文件并运行以下命令:

$作曲家更新

在将项目升级到 v6 之前,请确保将 PHP 版本从 7.1 升级到至少 7.2。

从 2019 年 12 月开始,PHP 7.1 将不再维护。

【讨论】:

以上是关于从 Laravel 5.5 更新到 6的主要内容,如果未能解决你的问题,请参考以下文章

laravel从5.2到5.5从入门到精通视频教程共16套

从 laravel 5 升级到 laravel 5.5 导致错误参数 1 传递给 App\Exceptions\Handler::report()

Laravel 从 5.5 升级到 5.6 到 5.7:未捕获 ReferenceError: axios is not defined

Laravel 5.5实时数据更新.

从 Laravel 5.5 升级后,Logger 不再工作

Laravel 5.5 发布,ThinkSNS+ 升级及状况分享