Django无法导入应用程序

时间:2016-02-11 10:57:41

标签: python django django-rest-framework

关注django-rest tutorial

应用程序/ urls.py:

from django.conf.urls import url, include
from rest_framework import routers
from app.abbr import views

router = routers.DefaultRouter()
router.register(r'users', views.UserViewSet)
router.register(r'groups', views.GroupViewSet)

# Wire up our API using automatic URL routing.
# Additionally, we include login URLs for the browsable API.
urlpatterns = [
    url(r'^', include(router.urls)),
    url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework'))
]

目录结构:

enter image description here

错误:

  

文件“.... / app / app / urls.py”,第3行,中      来自app.abbr导入视图   ImportError:没有名为'app.abbr'的模块

所以,叹息......

4 个答案:

答案 0 :(得分:1)

如果您指向显示您执行此操作的教程,那将非常有用。

您不应从app导入;指的是包含urls.py的内部目录。只需从abbr导入。

from abbr import views

答案 1 :(得分:0)

如果你像这样更改导入怎么办? from app.app.abbr import views

答案 2 :(得分:0)

我在考虑您使用 django 1.9 +

试试这个

from . import views

答案 3 :(得分:0)

在您通过django-admin startproject命令启动新项目时,默认情况下,在您的案例中名为App的根目录文件夹以项目名称命名。

您可以将根目录文件夹重命名为您想要的任何内容,它不会影响您的项目。

当您的代码从应用程序导入时,它实际上正在查看“应用程序”内容。文件夹包含' settings.py'文件。

您关注的django-rest tutorial在执行from tutorial.quickstart import views from quickstart import views时会出现错误{/ 1}}

所以同样适合你,你应该做from abbr import views