我使用 Pycharm 的重构 > 重命名将我的 django 项目的名称从 oldname
更改为 newname
。我已经搜索了该项目,它似乎到处都更改了名称。但是当我尝试运行服务器时,这是我得到的,
Traceback (most recent call last):
File "/Users/melissa/Dropbox/newname/manage.py", line 15, in <module>
execute_from_command_line(sys.argv)
File "/Users/melissa/Dropbox/newname/env/lib/python3.7/site-packages/django/core/management/__init__.py", line 371, in execute_from_command_line
utility.execute()
File "/Users/melissa/Dropbox/newname/env/lib/python3.7/site-packages/django/core/management/__init__.py", line 317, in execute
settings.INSTALLED_APPS
File "/Users/melissa/Dropbox/newname/env/lib/python3.7/site-packages/django/conf/__init__.py", line 56, in __getattr__
self._setup(name)
File "/Users/melissa/Dropbox/newname/env/lib/python3.7/site-packages/django/conf/__init__.py", line 43, in _setup
self._wrapped = Settings(settings_module)
File "/Users/melissa/Dropbox/newname/env/lib/python3.7/site-packages/django/conf/__init__.py", line 106, in __init__
mod = importlib.import_module(self.SETTINGS_MODULE)
File "/usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/python3.7/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 953, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 965, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'oldname'
有人可以帮我解决这个问题吗?
最佳答案
我在更改项目名称时遇到了同样的错误,问题是您正在使用 PyCharm 运行服务器,不是吗?希望您使用 PyCharm 创建了项目与 Django 支持。首先将以下设置添加到您的 wsgi.py
、asgi.py
和 manage.py
文件中,
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'oldname.settings')
到
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'newname.settings')
然后转到您的 settings.py
并更改以下设置,
ROOT_URLCONF = 'oldname.urls
WSGI_APPLICATION = 'oldname.wsgi.application'
到
ROOT_URLCONF = 'newname.urls
WSGI_APPLICATION = 'newname.wsgi.application'
如果你没有得到 PyCharm的 Django 支持,应该执行此解决方案,否则您将再次遇到相同的错误。您可以使用其他终端来尝试此操作而无需获取 PyCharm的 Django 支持并使用 python manage.py runserver
命令运行您的服务器。如果您的项目没有任何其他错误,您可以看到此解决方案正在运行。然后我意识到 PyCharm 有问题的 Django Support,我提供的帮助仅适用于那些正在使用 PyCharm 的人的 Django 支持。
转到您的项目并单击“编辑配置设置”。
您可以看到环境变量仍然具有以前的值,只需单击角落的图标即可编辑
DJANGO_SETTINGS_MODULE
变量。然后添加您的新项目名称
newname
,其中包含settings.py
文件。
就是这样。
关于python - 在 Django 中更改项目名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53024807/