[英]ImportError: No module named blog Django
我是 python 新手,我尝试在 django 中创建博客,当我尝试通过键入 python manage.py startapp blog 这个命令来创建模块时
python 版本:2.7 django-admin 版本:1.8
这是 urls.py 文件
url(r'^$', 'logicmindblog.blog.views.index'),
url(r'^blog/view/(?P<slug>[^\.]+).html', 'logicmindblog.blog.views.view_post', name='view_blog_post'),
url(r'^blog/category/(?P<slug>[^\.]+).html', 'logicmindblog.blog.views.view_category', name='view_blog_category'),
在 settings.py INSTALLED_APPS 中,当我添加“logicmindblog.blog”并尝试运行服务器时,它给了我错误 ImportError: No module named blog Django
但是当我删除项目名称并只添加“博客”并运行服务器时,此迁移和管理工作正常,我可以从管理部分添加博客、博客类别
谁能帮我解决这个问题,提前致谢
logicmindblog/
├── blog
│ ├── admin.py
│ ├── admin.pyc
│ ├── __init__.py
│ ├── __init__.pyc
│ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── 0001_initial.pyc
│ │ ├── __init__.py
│ │ └── __init__.pyc
│ ├── models.py
│ ├── models.pyc
│ ├── __pycache__
│ │ └── __init__.cpython-35.pyc
│ ├── tests.py
│ ├── views.py
│ └── views.pyc
├── db.sqlite3
├── logicmindblog
│ ├── __init__.py
│ ├── __init__.pyc
│ ├── __pycache__
│ │ ├── __init__.cpython-35.pyc
│ │ └── settings.cpython-35.pyc
│ ├── settings.py
│ ├── settings.pyc
│ ├── urls.py
│ ├── urls.pyc
│ ├── views.py
│ ├── views.pyc
│ ├── wsgi.py
│ └── wsgi.pyc
├── manage.py
└── views
├── base.html
├── index.html
├── view_category.html
└── view_post.html
在settings.py中只应添加应用名称blog
设置.py
INSTALLED_APPS = [
#Custom Apps
'blog',
. . .
. . .
#django apps
'django.contrib.admin',
'django.contrib.auth',
. . .
. . .
]
在urls.py 中
from .views import index, view_post, view_category
urlpatterns = [
url(r'^$', index, name='view-blog-index'),
url(r'^blog/view/(?P<slug>[^\.]+).html', view_post, name='view-blog-post'),
url(r'^blog/category/(?P<slug>[^\.]+).html', view_category, name='view-blog-category'),
]
定义 url 时应该使用以下语法:
from blog.views import index, view_post, view_category
urlpatterns = [
url(r'^$', index, name='view-blog-index'),
url(r'^blog/view/(?P<slug>[^\.]+).html', view_post, name='view-blog-post'),
url(r'^blog/category/(?P<slug>[^\.]+).html', view_category, name='view-blog-category'),
]
查看有关此主题的 Django 文档:链接
另外,请注意,官方文档建议在命名 url 模式时使用连字符而不是下划线: link
编辑:正如 Astik 所指出的,你不需要把logicmindblog.blog
放在INSTALLED_APPS
,你可以只放blog
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.