2014-10-02 43 views
6

如何将Yii 1.x升级至Yii 2.0最新版本? 我正在使用ubuntu操作系统,进程来更新我的老Yii到新的Yii发布版本2.0?如何将Yii 1.x升级至Yii 2.0

+0

是否有可能? – 2014-10-02 08:42:24

+0

https://github.com/yiisoft/yii2/blob/master/docs/guide/intro-upgrade-from-v1.md – Codecat 2014-10-02 08:52:24

+0

类的变化是巨大的,并不是花时间更改所有类的好方法,也编码实践发生了变化 – tinybyte 2014-10-02 09:21:41

回答

16

的Yii2导在这方面出色的文档 看到Upgrade from v1

我最近迁移夫妇从Yii的1.x的适度复杂的应用程序的Yii 2.0。有两种方法可以解决这个问题,你可以同时运行Yii 1.x和Yii 2,参见using-yii-2-with-yii-1。然后逐个迁移,虽然可能会有点痛苦,比如在第三层的时候试图重建二楼。

或者,您可以用完全相同的功能重写整个应用程序,我发现这样做效率更高,重要的代码可以重复使用,只需稍作修改,也可以在不更改功能的情况下调整设计。

重要的是确保暴露的API(即前端/ UI /功能)保持不变。在重写过程中更新功能或更改功能总是很有吸引力,但如果您坚持严格重新实现Yii2的所有功能,那么请考虑更改您的API,您的移植将更加顺畅。

+0

相对于最初构建的时间,您是否有可能根据现有的Yii 1代码来重新进行重写?你认为这是三分之一的时间吗? 3/4? – 2017-03-29 18:24:04

+1

这真的取决于你的Yii 1应用程序编写得有多好,无论是精心设计的胖模型和精简控制器,适当的关注点分离等,如果你只是重写,它应该可以在不到原始时间的一半时间内完成,假设布局和用户界面将相同。 – Manquer 2017-04-02 14:16:52