Ner*_*kic 4 python django installation python-module
"ModuleNotFoundError: No module named 'blog'"将我的博客应用添加到的INSTALLED_APPS部分时出现错误settings.py。我确定这与我在INSTALLED_APPS下添加“博客”应用程序的方式有关。当我从INSTALLED_APPS错误中删除“博客”引用时,该引用就会消失。似乎Django无法找到我的博客应用程序的目录?
我做了另一件事,那就是使用:
python manage.py startapp blog /myproject
Run Code Online (Sandbox Code Playgroud)
此处的区别是指定/myproject目录,而不使用:
python manage.py startapp blog
Run Code Online (Sandbox Code Playgroud)
它将放置在根目录下myproject。我想避免在根文件夹中添加应用程序目录,以便保持井井有条。但是看起来Django不喜欢这个,或者我在本INSTALLED_APPS节中没有正确引用这个?
我的项目目录如下:
myproject/
??? myproject
? ??? __init__.py
? ??? __pycache__
? ? ??? __init__.cpython-36.pyc
? ? ??? settings.cpython-36.pyc
? ? ??? urls.cpython-36.pyc
? ? ??? wsgi.cpython-36.pyc
? ??? blog
? ? ??? __init__.py
? ? ??? admin.py
? ? ??? apps.py
? ? ??? migrations
? ? ? ??? __init__.py
? ? ??? models.py
? ? ??? tests.py
? ? ??? views.py
? ??? settings.py
? ??? urls.py
? ??? wsgi.py
??? db.sqlite3
??? manage.py
Run Code Online (Sandbox Code Playgroud)
在我里面,我settings.py已经设置了我的应用程序blog:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'blog',
]
Run Code Online (Sandbox Code Playgroud)
目录结构异常。更常见的是,与您的应用匹配的名称为Blog的是
myproject/
??? myproject
? ??? __init__.py
? ??? __pycache__
? ? ??? __init__.cpython-36.pyc
? ? ??? settings.cpython-36.pyc
? ? ??? urls.cpython-36.pyc
? ? ??? wsgi.cpython-36.pyc
??? blog
? ??? __init__.py
? ??? admin.py
? ??? apps.py
? ??? migrations
? ? ??? __init__.py
? ??? models.py
? ??? tests.py
? ??? views.py
? ??? settings.py
? ??? urls.py
? ??? wsgi.py
??? db.sqlite3
??? manage.py
Run Code Online (Sandbox Code Playgroud)
Django需要能够导入您的应用程序,通常这意味着包括相对于根目录的完整路径'myproject.blog'。
你可以添加<full_path_to_your_project>/myproject/myproject到PYTHONPATH,让你可以导入blog,但我不会推荐它
| 归档时间: |
|
| 查看次数: |
12072 次 |
| 最近记录: |