12

我即将完成我的第一个 CakePHP 驱动的网站,刚刚看到他们已经在使用 CakePHP 2.0(还不是稳定版本)。

我的问题:

  • 迁移到 CakePHP 的新版本(当它成为“稳定”版本时)会非常耗时吗?我知道他们有迁移指南,但是 - 我以前从未使用过框架,所以我从来不需要迁移任何东西。

  • 您是为现有项目迁移代码,还是保持原样并仅将新的稳定版本用于未来的项目?

  • 我在哪里可以找到我目前安装的 CakePHP 版本?我查看了 LICENSE 和 VERSION 文件,但找不到其中列出的已安装/当前版本。

这些似乎是简单的问题,但我非常感谢任何想法/建议 - 在 Google 上搜索此内容只会显示如何迁移页面,而不是优点/缺点......等等。

4

3 回答 3

18

我已经将一些站点从 CakePHP 1.2 迁移到 1.3。根据我的经验,在有 5-10 个控制器且没有自定义插件等的网站上需要 2-3 个小时。我发现我通常只需要更改少数函数调用的语法,当我弄清楚哪些函数调用时,这只是在整个站点上进行查找/替换的问题。当然,从 1.3 到 2.0 可能会成为一个更大的问题,但我不认为这将是一个特别剧烈的 API 更改。

更新:我现在正在迁移到 CakePHP 2.0 beta 的过程中,并认为我应该更新这个,因为我发现更新比我写这篇文章时所假设的更广泛和深远。此处的迁移指南:https ://github.com/cakephp/docs/blob/master/en/appendices/2-0-migration-guide.rst

另一个更新:由于人们似乎发现这很有用,我只是想指出,Cake 现在有用地提供了一个升级外壳,可以为您完成一些工作。请注意,尽管文档说它将完成“大部分”工作,但我发现仍有相当多的函数调用等需要手动更新(请参阅迁移指南)。 http://book2.cakephp.org/en/console-and-shells/upgrade-shell.html

正如 dhofstet 所说,这完全取决于您网站的大小和复杂性。

您是否升级通常是一个判断调用,但有时您必须这样做(例如,如果您的主机升级到 PHP 5.3,Cake 1.2 有一些代码会中断)。您当然不会遇到旧的 WordPress、Drupal 等安装会遇到的那种安全问题。我已经看到随着 Cake 升级的一些明显的速度提升,所以根据具体情况,仅仅为此付出一些麻烦是值得的(Cake 2.0 最终放弃了 PHP 4 支持)。查看发行说明,看看新版本中是否有吸引您的东西。

要查看您的版本,请在cake/VERSION.txt文件中查看最后一行。很容易错过,但它应该只是一个数字,例如1.3.8.

于 2011-06-09T18:07:52.450 回答
1
  1. 这个问题很难回答,因为它取决于项目的规模和复杂性。“大”版本(从 1.1 -> 1.2、1.2 -> 1.3、1.3 -> 2.0)通常会破坏一些东西,因此您必须预算一些迁移工作。另一方面,“较小”版本之间的迁移(例如从 1.3.9 到 1.3.10)通常很容易,通常只是意味着替换 cake 文件夹。在这两种情况下,进行测试都是有用的。
  2. 我迁移积极维护的项目。
  3. 您可以在以下位置找到 CakePHP 版本cake/config/config.php
于 2011-06-08T14:02:07.890 回答
0

我现在正在迁移一个应用程序 1.3»2.0rc1,我没有遇到什么大麻烦。

  1. 我不得不更改文件夹/文件的名称,例如。app_controller.php » 控制器/AppController.php
  2. 按照迁移链接(tmp 链接)http://book2.cakephp.org/en/appendices/2-0-migration-guide.html
  3. 来自各种来源的插件/组件/.. 将不起作用(在减号处,对于第 1 点)
  4. 要更新代码(在我的情况下不需要,因为应用程序运行良好)我已经对一个虚拟表进行了 shell-baked 并查看了代码中的差异。这是一个很好的起点
  5. 身份验证/授权在某些配置中发生了更改,但需要很少的更改。
  6. 树木仍在工作
  7. 没有。但我很确定这是我的错。

现在一切都好,干得好!

于 2011-09-08T10:15:26.287 回答