具有 webpack 和 reactjs 项目结构的 django runserver
django runserver with webpack and reactjs project structure
我正在尝试配置 Django
、webpack
和 reactjs
的技术栈
这是我的项目结构:
现在我在 运行 python manage.py runserver
:
时收到此错误
ImportError: No module named cherngloong.settings
回溯:
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/Users/bli1/Development/Django/CL/cherngloong/cherngloong/lib/python2.7/site-packages/django/core/management/__init__.py", line 351, in execute_from_command_line
utility.execute()
File "/Users/bli1/Development/Django/CL/cherngloong/cherngloong/lib/python2.7/site-packages/django/core/management/__init__.py", line 303, in execute
settings.INSTALLED_APPS
File "/Users/bli1/Development/Django/CL/cherngloong/cherngloong/lib/python2.7/site-packages/django/conf/__init__.py", line 48, in __getattr__
self._setup(name)
File "/Users/bli1/Development/Django/CL/cherngloong/cherngloong/lib/python2.7/site-packages/django/conf/__init__.py", line 44, in _setup
self._wrapped = Settings(settings_module)
File "/Users/bli1/Development/Django/CL/cherngloong/cherngloong/lib/python2.7/site-packages/django/conf/__init__.py", line 92, in __init__
mod = importlib.import_module(self.SETTINGS_MODULE)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
ImportError: No module named cherngloong.settings
这是由于 settings.py
在不同的位置造成的。
我想保留项目的这个结构,因为我想 app
目录处理前端,我希望 server
目录处理后端。我怎样才能保持这个结构,同时又能够 运行 runserver
命令?
我查看了 manage.py
并发现了这个:
#!/usr/bin/env python
import os
import sys
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "cherngloong.settings")
from django.core.management import execute_from_command_line
execute_from_command_line(sys.argv)
看来我需要改变cherngloong.settings
。我试图将其更改为 server.cherngloong.settings
但我得到了同样的错误:
ImportError: No module named server.cherngloong.settings
您正试图像访问模块一样访问设置。为了使它工作,Python 必须将 server
和 chernloong
目录都解释为包含包的目录。
为此,您必须在两个目录中创建一个 __init__.py
文件。该文件可以为空。 What's __init__.py and what is it for?
我正在尝试配置 Django
、webpack
和 reactjs
这是我的项目结构:
现在我在 运行 python manage.py runserver
:
ImportError: No module named cherngloong.settings
回溯:
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/Users/bli1/Development/Django/CL/cherngloong/cherngloong/lib/python2.7/site-packages/django/core/management/__init__.py", line 351, in execute_from_command_line
utility.execute()
File "/Users/bli1/Development/Django/CL/cherngloong/cherngloong/lib/python2.7/site-packages/django/core/management/__init__.py", line 303, in execute
settings.INSTALLED_APPS
File "/Users/bli1/Development/Django/CL/cherngloong/cherngloong/lib/python2.7/site-packages/django/conf/__init__.py", line 48, in __getattr__
self._setup(name)
File "/Users/bli1/Development/Django/CL/cherngloong/cherngloong/lib/python2.7/site-packages/django/conf/__init__.py", line 44, in _setup
self._wrapped = Settings(settings_module)
File "/Users/bli1/Development/Django/CL/cherngloong/cherngloong/lib/python2.7/site-packages/django/conf/__init__.py", line 92, in __init__
mod = importlib.import_module(self.SETTINGS_MODULE)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
ImportError: No module named cherngloong.settings
这是由于 settings.py
在不同的位置造成的。
我想保留项目的这个结构,因为我想 app
目录处理前端,我希望 server
目录处理后端。我怎样才能保持这个结构,同时又能够 运行 runserver
命令?
我查看了 manage.py
并发现了这个:
#!/usr/bin/env python
import os
import sys
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "cherngloong.settings")
from django.core.management import execute_from_command_line
execute_from_command_line(sys.argv)
看来我需要改变cherngloong.settings
。我试图将其更改为 server.cherngloong.settings
但我得到了同样的错误:
ImportError: No module named server.cherngloong.settings
您正试图像访问模块一样访问设置。为了使它工作,Python 必须将 server
和 chernloong
目录都解释为包含包的目录。
为此,您必须在两个目录中创建一个 __init__.py
文件。该文件可以为空。 What's __init__.py and what is it for?