Миграция приложения Google App Engine с Django 0,96 на Django 1.2 - PullRequest
3 голосов
/ 01 мая 2011

Я скоро начну портировать различные приложения Google App Engine, созданные с версией Django по умолчанию (0.96), на Django 1.2. Обычно я не использую какие-либо специальные модули Django, кроме i18n, для перевода сайтов.

Я планирую пройти через обратно несовместимые изменения в Django с 0,96 до 1,0 и различные заметки о выпуске Django . Это текущие заметки о выпуске, доступные в диапазоне от 0,96 до 1,2:

  • 1.2 выпуск
    • Замечания к выпуску Django 1.2.5
    • Замечания к выпуску Django 1.2.4
    • Замечания к выпуску Django 1.2.2
    • Замечания к выпуску Django 1.2
  • 1.1 выпуск
    • Замечания к выпуску Django 1.1.4
    • Примечания к выпуску Django 1.1.3
    • Примечания к выпуску Django 1.1.2
    • Замечания к выпуску Django 1.1
  • 1.0 выпуск
    • Примечания к выпуску Django 1.0.2
    • Примечания к выпуску Django 1.0.1
    • Примечания к выпуску Django 1.0

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

У меня есть разные приложения для миграции, но я начну с простого / маленького приложения , чтобы понять суть.

Ответы [ 2 ]

2 голосов
/ 01 мая 2011

Вместо того, чтобы пытаться выяснить все, что изменилось между Django 0,96 и 1,2, я бы посоветовал написать набор тестов, чтобы охватить поведение вашего пользовательского интерфейса.Вы можете выполнить модульное тестирование каждого из ваших шаблонов с помощью новой testbed framework или написать полные тесты интеграции на основе браузера, например, Selenium .

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

0 голосов
/ 02 мая 2011

Мне недавно удалось обновить мое довольно большое приложение с опытом, который когда-то был очень легок, зная, что делать. В дополнение к загрузке django 1.2, который был описан выше, мне пришлось внести 3 изменения: 1) изменить импорт i18n на другой, так называемый, lazy import для функции, которую мы называем _ i18n. 2) Мне пришлось изменить обработку RSS, которой у вас, вероятно, нет. 3) Гуманизированная библиотека больше не используется. Когда я знал, как это сделать, фактическое обновление заняло у меня всего 5 или 10 минут.

...