2014-10-02 4 views
6

Как обновить версию Yii 1.x до версии последней версии Yii 2.0? Я использую ubuntu OS, процесс обновления моего старого Yii к новой версии версии Yii версии 2.0?Как обновить Yii 1.x до Yii 2.0

+0

Возможно ли это или нет? –

+0

https://github.com/yiisoft/yii2/blob/master/docs/guide/intro-upgrade-from-v1.md – Codecat

+0

Изменения в классах огромны и не являются хорошим способом провести время, изменяя все классы, а также изменились методы кодирования – tinybyte

ответ

16

Руководство Yii2 имеет отличную документацию в связи с этим см Upgrade from v1

Я недавно мигрировали пару умеренно сложных приложений от Yii 1.x до Yii 2.0. Есть два способа сделать это: либо вы можете запускать Yii 1.x и Yii 2 одновременно, см. using-yii-2-with-yii-1. Затем переместите часть по частям, в то время как возможно, это было довольно немного боли, как попытка восстановить второй этаж, живя на третьем.

В качестве альтернативы вы можете переписать все приложение снизу с такой же функциональностью, я считаю, что это намного эффективнее, значительный код может быть повторно использован с небольшими изменениями, что также дает возможность настроить дизайн без изменения функциональности.

Важно, чтобы открытый API (т. Е. Интерфейс/интерфейс/функциональность) оставался неизменным. Всегда заманчиво обновлять функциональность или изменять функции во время перезаписи, однако, если вы придерживаетесь строгого переопределения всего для Yii2, то подумайте об изменении вашего API, ваша миграция будет более плавной.

+0

Возможно ли, что вам удастся сделать переписку на основе существующего кода Yii 1 относительно времени, затраченного на сборку? Вы думаете, что это 1/3 времени? 3/4? –

+1

Это действительно зависит от того, насколько хорошо написано ваше приложение Yii 1, будь то хорошо спроектированные модели жира и тонкие контроллеры, правильное разделение проблем и т. Д., Если вы просто переписываете, это должно быть выполнимо менее чем за половину первоначального времени, предполагая макеты и пользовательский интерфейс будут одинаковыми. – Manquer

Смежные вопросы