【问题标题】:ImportError at / No module named quickstart in django rest frameworkImportError at / No module named quickstart in django rest framework
【发布时间】:2015-02-24 05:09:59
【问题描述】:

http://www.django-rest-framework.org/tutorial/quickstart/ 中的教程出错

这样的错误:

 Traceback:
File "/home/apsijogja/drfdjango/end/local/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
  98.                 resolver_match = resolver.resolve(request.path_info)
File "/home/apsijogja/drfdjango/end/local/lib/python2.7/site-packages/django/core/urlresolvers.py" in resolve
  343.             for pattern in self.url_patterns:
File "/home/apsijogja/drfdjango/end/local/lib/python2.7/site-packages/django/core/urlresolvers.py" in url_patterns
  372.         patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module)
File "/home/apsijogja/drfdjango/end/local/lib/python2.7/site-packages/django/core/urlresolvers.py" in urlconf_module
  366.             self._urlconf_module = import_module(self.urlconf_name)
File "/usr/lib/python2.7/importlib/__init__.py" in import_module
  37.     __import__(name)
File "/home/apsijogja/drfdjango/drf/drf/urls.py" in <module>
  4. from drf.quickstart import views

Exception Type: ImportError at /
Exception Value: No module named quickstart

我有 ~/drfdjango/drf/quickstart/view.py

    from django.shortcuts import render
from django.contib.auth.models import User, Group
from drf.quickstart.serializers import UserSerializer, GroupSerializer

# Create your views here.

class UserViewSet(viewsets.ModelViewSet):
    """
    API endpoint that allows users to be viewed or edited.
    """
    queryset         = User.objects.all()
    serializer_class = UserSerializer

class GroupViewSet(viewsets.ModelViewSet):
    """
    API endpoint that allows users to be viewed or edited
    """
    queryset         = Group.objects.all()
    serializer_class = GroupSerializer

我有 ~/drfdjango/drf/drf/urls.py

from django.conf.urls import patterns, include, url
from django.contrib import admin
from rest_framework import routers
from drf.quickstart import views

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

urlpatterns = patterns('',
    # Examples:
    # url(r'^$', 'drf.views.home', name='home'),
    # url(r'^blog/', include('blog.urls')),

    url(r'^admin/', include(admin.site.urls)),
    url(r'^', include(router.urls)),
    url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework'))
)

我已经在 ~drfdjango/drf/drf/setting.py 中安装了_apps rest_framework

    INSTALLED_APPS = (
    ...
    'rest_framework',
)

REST_FRAMEWORK = {
    'DEFAULT_PERMISSION_CLASSES': ('rest_framework.permissions.IsAdminUser',),
    'PAGINATE_BY': 10
}

那么为什么 ImportError at / No module named quickstart in urls.py line 4?

你能帮我解决这个问题吗?

【问题讨论】:

    标签: python django django-rest-framework


    【解决方案1】:

    您不应使用drf 项目名称从quickstart 应用程序导入。像这样导入:

    from quickstart import views
    

    【讨论】:

      【解决方案2】:

      我遇到了同样的错误,并用 urls.py 更改中的这一行解决了它

      from drf.quickstart import views
      

      from .quickstart import views
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-08-12
        • 1970-01-01
        • 2019-12-20
        • 2015-06-08
        • 2021-06-06
        • 2017-09-11
        • 2011-04-04
        相关资源
        最近更新 更多