我已经学习Django一段时间了,一直在做一个项目。一切都很好,直到昨天我学习一个新的主题,保存项目并关闭我的PC。没有任何错误或任何东西。今天,当我试图使用命令“py www.example.com runserver”运行我的项目时manage.py,我收到一个错误“ModuleNotFoundError:No module named 'settings'“.我花了足够的时间试图解决这个问题,并假设错误是在我的项目中。我无法解决它,并决定在新的虚拟环境中创建一个全新的项目。令我惊讶的是,同样的错误也发生在这个全新的项目中。我想我可能做错了什么,所以我在笔记本电脑上重复了项目创建,我试着重新安装PyCharm和Python,但是没有用。我想我不能再在这台电脑上继续使用Django了...
我不知道什么数据可能需要解决这个问题,所以我会提供至少的东西.这些是从刚刚创建的项目的数据. Project structureInstalled modules完整错误:在处理上述异常的过程中,又出现了一个异常:
> Traceback (most recent call last):
> File "C:\Django2\metanit\manage.py", line 22, in <module>
> main()
> File "C:\Django2\metanit\manage.py", line 18, in main
> execute_from_command_line(sys.argv)
> File "C:\Django2\venv\Lib\site-packages\django\core\management\__init__.py", line 446, in execute_from_command_line
> utility.execute()
> File "C:\Django2\venv\Lib\site-packages\django\core\management\__init__.py", line 440, in execute
> self.fetch_command(subcommand).run_from_argv(self.argv)
> File "C:\Django2\venv\Lib\site-packages\django\core\management\base.py", line 415, in run_from_argv
> connections.close_all()
> File "C:\Django2\venv\Lib\site-packages\django\utils\connection.py", line 84, in close_all
> for conn in self.all(initialized_only=True):
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File "C:\Django2\venv\Lib\site-packages\django\utils\connection.py", line 76, in all
> return [
> ^
> File "C:\Django2\venv\Lib\site-packages\django\utils\connection.py", line 73, in __iter__
> return iter(self.settings)
> ^^^^^^^^^^^^^
> File "C:\Django2\venv\Lib\site-packages\django\utils\functional.py", line 57, in __get__
> res = instance.__dict__[self.name] = self.func(instance)
> ^^^^^^^^^^^^^^^^^^^
> File "C:\Django2\venv\Lib\site-packages\django\utils\connection.py", line 45, in settings
> self._settings = self.configure_settings(self._settings)
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File "C:\Django2\venv\Lib\site-packages\django\db\utils.py", line 148, in configure_settings
> databases = super().configure_settings(databases)
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File "C:\Django2\venv\Lib\site-packages\django\utils\connection.py", line 50, in configure_settings
> settings = getattr(django_settings, self.settings_name)
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File "C:\Django2\venv\Lib\site-packages\django\conf\__init__.py", line 92, in __getattr__
> self._setup(name)
> File "C:\Django2\venv\Lib\site-packages\django\conf\__init__.py", line 79, in _setup
> self._wrapped = Settings(settings_module)
> ^^^^^^^^^^^^^^^^^^^^^^^^^
> File "C:\Django2\venv\Lib\site-packages\django\conf\__init__.py", line 190, in __init__
> mod = importlib.import_module(self.SETTINGS_MODULE)
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File "C:\Users\suyar\AppData\Local\Programs\Python\Python311\Lib\importlib\__init__.py", line 126, in import_module
> return _bootstrap._gcd_import(name[level:], package, level)
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
> File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
> File "<frozen importlib._bootstrap>", line 1128, in _find_and_load_unlocked
> File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
> File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
> File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
> File "<frozen importlib._bootstrap>", line 1142, in _find_and_load_unlocked
> ModuleNotFoundError: No module named 'settings'
本以为错误会在新项目中消失,但它仍然存在,我在笔记本电脑上重复了同样的步骤,那里的一切都工作正常,现在我认为我的PC“坏了”。
3条答案
按热度按时间4ngedf3f1#
检查包含设置模块的目录是否在项目的www.example.com文件中正确配置manage.py。manage.py文件是Django项目的入口点,必须正确配置才能正确启动项目。
cwtwac6a2#
首先,检查python和django的版本是否一致。
也许,有可能Django安装在与Python指南包不同的位置
oknrviil3#
感谢大家的帮助,@Idk的想法-运行manage.py直接导致了消息-
Note that only Django core commands are listed as settings are not properly configured (error: No module named 'settings')
之后,我找到了解决第一个链接到谷歌,即在这里,终端命令-set DJANGO_SETTINGS_MODULE=mysite.settings
解决了我的问题