执行Django教程时导入错误

时间:2012-09-25 10:39:12

标签: python django

我正在关注以下链接中给出的Django教程: -

http://docs.djangoproject.com/en/1.4/intro/tutorial01/

在运行服务器时,我收到很多错误消息: -

ImportError at /admin/

No module named polls.urls

Request Method:     GET
Request URL:        http://127.0.0.1:8000/admin/
Django Version:     1.4.1
Exception Type:     ImportError
Exception Value:    

No module named polls.urls

Exception Location:     C:\Python27\lib\site-packages\django\utils\importlib.py in import_module, line 35
Python Executable:      C:\Python27\python.exe
Python Version:         2.7.3

Python Path:    

['D:\\chetan\\All_My_Projects\\mysite1',
 'C:\\Windows\\system32\\python27.zip',
 'C:\\Python27\\DLLs',
 'C:\\Python27\\lib',
 'C:\\Python27\\lib\\plat-win',
 'C:\\Python27\\lib\\lib-tk',
 'C:\\Python27',
 'C:\\Python27\\lib\\site-packages']

错误与以下内容类似: -

No module named urls

我的问题是,我们是否需要添加项目目录,在我的情况下将D:\ chetan \ All_My_Projects \ mysite1添加到环境变量?这是否会导致问题..

4 个答案:

答案 0 :(得分:1)

这是整个Django项目(我想,你在Windows上,使用Py 27)

请按照以下步骤操作:

  • 打开cmd,将其指向d:\,现在python c:/python27/lib/site-packages/django/bin/django-admin.py startproject mysite

  • cd mysitepython manage.py startapp polls

现在,cd polls

# polls/views.py
from django.shortcuts import render_to_response
def polls_home(request):
    return render_to_response("polls.html")

# polls/urls.py
from django.conf.urls import patterns, include, url
import views
urlpatterns = patterns ("",
                            url(r'^polls$', views.polls_home),
)
  • 转到d:/mysite/mysite/settings.py并在polls

  • 中添加INSTALLED_APPS
  • 非常重要:open mysite / mysite / urls.py

url(r'^home$', include('polls.urls') ),添加到网址格式

现在,运行服务器并打开/home/polls

答案 1 :(得分:0)

您是否可以输入<your_app>/urls.py

url(r'^polls/', include(polls.urls))

而不是这个? (需要报价):

url(r'^polls/', include('polls.urls'))

如果不起作用,我会检查polls内的INSTALLED_APPS是否在<your_app>/settings.py内。

答案 2 :(得分:0)

在PythonPath.i.e中添加项目后,Django教程正确执行,我的项目是在'D:\ chetan \ All_My_Projects \ mysite1'中创建的。我在Aptana Studio所要做的就是: -

1.转到Windows-&gt;偏好设置 - &gt; PyDev-&gt; Interpreter-Python

2.将'D:\ chetan \ All_My_Projects \ mysite1'添加到PythonPath。

谢谢大家的帮助。我还想参考以下链接,该链接强调将项目添加到PythonPath: -

http://www.webmonkey.com/2010/02/Install_Django_and_Build_Your_First_App

答案 3 :(得分:0)

本教程可以从使用绝对路径中受益,例如: mysite/mysite/urls.py等,以避免混淆。这就是为什么......

django教程有点令人困惑,因为它创建了一个项目mysite(我们大多数人都会给出一个不同的名称),然后在该项目中mysite它还有一个名为{的网站{1}}。

  • 一个mysite目录用于启动服务器,因为它包含mysite
  • 其他嵌套manage.py包含映射到新应用的mysite(教程称此应用为urls.py)。

因此,虽然教程清楚地解释了目录结构应该的样子,但是如果试图过快地跟踪它,那么应用程序polls是不是很明显并排居住的网站polls)。从而创建mysitemysite/mysitemysite/pollsdjangotest/djangotest等。

在学习本教程时,如果有人在错误的目录中创建了必要的文件,那么很快就会明白该人做错了什么导致错误djangotest/myapp