обновление проекта python django с 1.3 до 1.5

в настоящее время у меня есть проект python, использующий django версии 1.3, работающий на ОС Mountain Lion, и теперь я хочу обновить его до django 1.5. Но когда я ставлю его и пытаюсь сделать python manage.py runserver, я получаю сообщение об ошибке

Ошибка: не удается найти файл «settings.py» в каталоге, содержащем «manage.py». Похоже, вы настроили вещи. Вам нужно будет запустить django-admin.py, передав ему свой модуль настроек. (Если файл settings.py действительно существует, он каким-то образом вызывает ImportError.)

я понял, что структура проекта отличается, есть ли способ каким-то образом преобразовать или обновить проект 1.3 в проект 1.5?


person rassel pratomo    schedule 04.06.2013    source источник


Ответы (2)


Каждый выпуск Django имеет примечание к выпуску с инструкциями по обновлению.

  1. Обновите свой проект до Django 1.4.
  2. Обновите свой проект до Django 1.5.

К сожалению, процесс не автоматизирован, поэтому вам придется внимательно просмотреть оба документа.

person kirelagin    schedule 04.06.2013
comment
Конкретная ошибка, которую получает OP, не должна появляться в Django 1.5. В примечаниях к выпуску говорится: (Manage.py в старом стиле будет продолжать работать, как и раньше, до Django 1.6. В версии 1.5 он выдаст предупреждение об устаревании). - person gertvdijk; 04.06.2013
comment
@gertvdijk Я тоже так думаю. Но, собственно, вопрос был именно об обновлении, а не об исправлении ошибки. В любом случае, в процессе обновления ОП должен реструктурировать свой проект и. скорее всего ошибка уйдет. - person kirelagin; 04.06.2013
comment
@gertvdijk Кстати, я предполагаю, что он уже изменил структуру проекта (т.е. переместил settings.py), но не обновил manage.py. - person kirelagin; 04.06.2013

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

Django 1.4 поставляется с обновленным макетом проекта по умолчанию и файлом manage.py для команды управления startproject. Они устраняют некоторые проблемы с предыдущей обработкой путей импорта Python в manage.py, которая приводила к двойному импорту, проблемам при переходе от разработки к развертыванию и другим трудным для отладки проблемам с путями.

Это будет означать, что есть конфликт там, где Django ожидает, что ваш settings.py будет.

person Timmy O'Mahony    schedule 04.06.2013