从CakePHP 3升级到CakePHP 4需要进行哪些更改?

时间:2020-04-04 05:32:13

标签: php cakephp upgrade cakephp-3.x cakephp-4.x

如何将项目从CakePHP 3更新到CakePHP 4?

我已经尝试安装最新的CakePHP 3.8软件包,并根据CakePHP 4的升级指南转换为Cakephp 4

更新不正确,显示错误如下

Missing Template::Error: The view for PagesController::display() was not found.
Confirm you have created the file: "Pages/welcome.ctp" in one of the following paths: /var/www/html/cake38/templates/Pages/home.ctp

1 个答案:

答案 0 :(得分:3)

在升级到4.x(运行composer outdated后,它会向您显示废弃的软件包)之前,您不必关心这两个警告。如果它们仍然存在,请检查您的composer.lock文件并搜索软件包名称以找出所需的软件包,然后查看是否可以使用这些软件包的更新版本。

迁移指南中大致概述了升级所需进行的更改,此处没有必要重复这些更改。您应该执行常规升级过程,即:

  1. 升级您的作曲家依赖性
  2. 根据目标版本(配置,二进制文件,shell等,请参见 https://github.com/cakephp/app/tree/3.8.0 )升级您的应用程序框架文件/结构
  3. 运行测试套件并修复失败。

一旦您使用3.8并已修复所有问题,请遵循4.0 upgrade guide,即:

  1. 运行升级工具
  2. 然后再次升级依赖项,运行测试套件,并修复故障。

通常,弃用消息会告诉您如何解决问题,即它们告诉您使用什么而不是弃用的代码。如果您对某些特定的过时问题不知道如何解决,则建议您对其进行详细说明。要获得一些快速帮助,最好在CakePHP Slack / IRC频道中询问有关问题。

对于.ctp文件,如果升级到4.x之后问题仍然存在,请在应用程序代码以及供应商代码中搜索字符串ctp,以找出存在的位置。可能仍然是对此的参考,这不是一个可以普遍解决的问题。