在PyCharms中设置我的django项目时,我无法为django配置python shell。我的项目结构如下:PyCharm - Django设置在运行配置中得到了尊重,但不在python控制台中
- mysite_root
- deployment
- ...ansible files
- mysite
- __init__.py
- manage.py
- mysite
- __init__.py
- settings.py
- local_dev_settings.py
- app1
- __init__.py
- ...other files
- app2
- __init__.py
- ...other files
的来源根设置为mysite_root/mysite
我运行/调试配置具有环境变量DJANGO_SETTINGS_MODULE=mysite.local_dev_settings
&它完美的作品。 中项目设置Language & Frameworks --> Django
下的配置如下:
- Django project root -- <path to mysite_root/mysite>
- Settings -- mysite/local_dev_settings.py
- Manage script -- manage.py
- Environment variables -- DJANGO_SETTINGS_MODULE=mysite.local_dev_settings
现在,虽然通过工具启动的Python控制台或Manage.py任务,我得到这个错误信息:
Traceback (most recent call last):
File "/Users/utkarsh/.venvs/mysite/lib/python3.5/site-packages/IPython/core/interactiveshell.py", line 2885, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "<ipython-input-1-4578708c9793>", line 5, in <module>
if 'setup' in dir(django): django.setup()
File "/Users/utkarsh/.venvs/mysite/lib/python3.5/site-packages/django/__init__.py", line 17, in setup
configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
File "/Users/utkarsh/.venvs/mysite/lib/python3.5/site-packages/django/conf/__init__.py", line 55, in __getattr__
self._setup(name)
File "/Users/utkarsh/.venvs/mysite/lib/python3.5/site-packages/django/conf/__init__.py", line 43, in _setup
self._wrapped = Settings(settings_module)
File "/Users/utkarsh/.venvs/mysite/lib/python3.5/site-packages/django/conf/__init__.py", line 99, in __init__
mod = importlib.import_module(self.SETTINGS_MODULE)
File "/Users/utkarsh/.venvs/mysite/lib/python3.5/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 986, in _gcd_import
File "<frozen importlib._bootstrap>", line 969, in _find_and_load
File "<frozen importlib._bootstrap>", line 956, in _find_and_load_unlocked
ImportError: No module named 'mysite.local_dev_settings'
编辑:找到问题的解决方案 请参阅下面的答案以解决此问题。
我想我可能误解了你的问题......在同一个对话框中,我在回答中有一个环境变量部分,尝试在那里设置你的设置模块(添加一个名为DJANGO_SETTINGS_MODULE的env变量并设置到你的设置) – Sayse
只是想通了。问题是Content&Sources根目录被包含,因此'mysite_root/mysite'出现在'mysire_root/mysite/mysite'之前,因为pycharm在加载设置时失败了,即使它也应该查看后一个包。 感谢您的帮助。 – Utkarsh
不用担心,您应该考虑为自己的问题添加答案,这可能有助于未来的读者 – Sayse