繁体   English   中英

Django - 导入错误:没有名为* .urls的模块

[英]Django - Import Error: No module named *.urls

我正在使用官方的Django教程,并使用Django 1.6.1版,Python 2.7.6稍微调整它以满足我自己的需要。

我正处于让我映射URL的地步,但是当有一个非常清楚的模块中有一个恰当命名的文件时,我一直得到“没有模块名为customers.urls”的错误,所以我真的不知道是什么我做错了。

我最初的想法是我需要在root / urls.py中导入与客户相关的内容,但导入的每个组合都会导致大致相同的错误,并且教程没有说这样做。

ROOT_URLCONF ='taco.urls'(taco是项目的名称)

我正在使用manage.py/runserver运行它,所以没有特殊的Web服务器技巧,我知道。 我重启了好几次。

应用程序都已正确注册,因为回溯可以证明。

关于我正在俯瞰的东西的任何指示将不胜感激!

根/ urls.py:

from django.conf.urls import patterns, include, url
from django.contrib import admin

admin.autodiscover()

urlpatterns = patterns('',
    url(r'^customers/', include('customers.urls')),
    url(r'^admin/', include(admin.site.urls)),
)

客户/ urls.py:

from django.conf.urls import patterns, url;

from customers import views;

urlpatterns = ('', 
    url(r'^$', views.index, name='index')
);

客户/ views.py:

from django.shortcuts import render
from django.http import HttpResponse;

def index(request):
    return HttpResponse("Hello");

追溯

Environment:


Request Method: GET
Request URL: http://192.168.3.208:8000/customers/

Django Version: 1.6.1
Python Version: 2.7.6
Installed Applications:
('django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'south',
 'taco.customers',
 'taco.inventory',
 'taco.lookups',
 'taco.orders')
Installed Middleware:
('django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware')


Traceback:
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py" in get_response
  99.                 resolver_match = resolver.resolve(request.path_info)
File "/usr/lib/python2.7/dist-packages/django/core/urlresolvers.py" in resolve
  337.             for pattern in self.url_patterns:
File "/usr/lib/python2.7/dist-packages/django/core/urlresolvers.py" in url_patterns
  365.         patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module)
File "/usr/lib/python2.7/dist-packages/django/core/urlresolvers.py" in urlconf_module
  360.             self._urlconf_module = import_module(self.urlconf_name)
File "/usr/lib/python2.7/dist-packages/django/utils/importlib.py" in import_module
  40.         __import__(name)
File "/var/project/taco/taco/urls.py" in <module>
  7.     url(r'^customers/', include('customers.urls')),
File "/usr/lib/python2.7/dist-packages/django/conf/urls/__init__.py" in include
  26.         urlconf_module = import_module(urlconf_module)
File "/usr/lib/python2.7/dist-packages/django/utils/importlib.py" in import_module
  40.         __import__(name)

Exception Type: ImportError at /customers/
Exception Value: No module named customers.urls

在您的customers / urls.py中:

改变这个:

urlpatterns = ('', 
    url(r'^$', views.index, name='index')
);

为了这:

urlpatterns = patterns('', 
    url(r'^$', views.index, name='index')
);

另外,请确保在包customers__init__.py文件。 并且INSTALLED_APPS正确地填充了您的应用名称。

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django.contrib.admin',
    'south',
    'customers',
    'inventory',
    'lookups',
    'orders',
)

如果taco是项目的名称,请检查是否正确引用了应用程序,因此在已安装的应用程序中,您可能需要以下内容:

Installed Applications:
('django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'south',
 'customers',
 'inventory',
 'lookups',
 'orders')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM