Изменение названия проекта на Django

Всем привет. Прохожу обучение по одному курсу по Django. Там показывают, что ради удобства меняют название проекта. Например, создали проект на Django под названием: lamp, внутри автоматически создается подпапка lamp. И они просто меняют название проекта с lamp на lamp-project. Да, согласен, удобно, но теперь проект не запускается, так как пути к другим файлам исказились. Но у них всё нормально. Как так получилось?

P.S. Я делаю на Windows в Pycharm, на курсе делают в MacOS в Atom.

введите сюда описание изображения


Ответы (1 шт):

Автор решения: em0ji

Обычно меняют название внутренней папки с настройками проекта на config/, нежели переименовывают головную, потому-что если переименовать основную папку проекта lamp/ в lamp-project/, то это никак не повлияет на сами пути, всё будет работать. У вас получится папка lamp-project/, а в ней будет находится файл manage.py и папка lamp/ с настройками. Скорее всего, вы переименовали внутреннюю папку lamp/ с конфигурационными настройками в lamp-project/, тогда всё логично, что ваш проект перестал работать.

Теперь необходимо либо перенастроить свой проект, либо вернуть внутренней папке с настройками старое название. Для того чтобы перенастроить проект, необходимо поочередно зайти в файлы и поменять старое название lamp на новое lamp-project. Начинаем с settings.py:

ROOT_URLCONF = 'lamp-project.urls' 

WSGI_APPLICATION = 'lamp-project.wsgi.application'

asgi.py:

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'lamp-project.settings')

wsgi.py:

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'lamp-project.settings')

теперь меняем настройки в самом файле manage.py:

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'lamp-project.settings')

как по мне это вкусовщина, но лучше уже тогда менять название на более понятное config, чем на lamp-project.

А так в PyCharm есть поиск по проекту, с помощью которого можно переименовать всё в автоматическом режиме, а не бегать по файлам и не править всё ручками, но это, как по мне, для "слабаков". С Atom я не знаком, но предполагаю, что там тоже есть подобный функционал.

→ Ссылка