2

我正在尝试的一个非常基本的测试站点上出现导入错误。以下是错误消息:

ImportError at /

No module named tickets

Request Method:     GET
Request URL:    http://dcdev1.dcevolve.com/
Django Version:     1.5.1
Exception Type:     ImportError
Exception Value:    

No module named tickets

Exception Location:     /usr/lib/python2.6/site-packages/django/utils/importlib.py     in import_module, line 35
Python Executable:  /usr/bin/python
Python Version:     2.6.6
Python Path:    

['/home/django/dcdev1',
 '/usr/lib64/python26.zip',
 '/usr/lib64/python2.6',
 '/usr/lib64/python2.6/plat-linux2',
 '/usr/lib64/python2.6/lib-tk',
 '/usr/lib64/python2.6/lib-old',
 '/usr/lib64/python2.6/lib-dynload',
 '/usr/lib64/python2.6/site-packages',
 '/usr/lib/python2.6/site-packages']

Server time:    Mon, 5 Aug 2013 02:58:39 -0500

我的目录结构是这样的:

-/home/django/dcdev1
-/home/django/manage.py
-/home/django/tickets

在 dcdev1 下有__init__.py __init__.pyc settings.py settings.pyc urls.py urls.pyc wsgi.py wsgi.pyc

门票下有

__init__.py __init__.pyc models.py models.pyc templates tests.py views.py views.pyc

相关 settings.py 部分:

TEMPLATE_DIRS = (
    "tickets/templates",
    # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
    # Always use forward slashes, even on Windows.
    # Don't forget to use absolute paths, not relative paths.
)

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'tickets',
    # Uncomment the next line to enable the admin:
    # 'django.contrib.admin',
    # Uncomment the next line to enable admin documentation:
    # 'django.contrib.admindocs',

网址.py:

from django.conf.urls import patterns, include, url
from tickets.models import ticket_info
# Uncomment the next two lines to enable the admin:
# from django.contrib import admin
# admin.autodiscover()

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

    # Uncomment the admin/doc line below to enable admin documentation:
    # url(r'^admin/doc/', include('django.contrib.admindocs.urls')),

    # Uncomment the next line to enable the admin:
    # url(r'^admin/', include(admin.site.urls)),

模型.py:

from django.db import models


class ticket_info(models.Model):
    from_address = models.CharField(max_length = 30)
    to_address = models.CharField(max_length = 30)
    subject_id = models.CharField(max_length = 100)
    body_text = models.TextField()
    recv_timestamp = models.DateTimeField()

视图.py

from django.shortcuts import render_to_response

from tickets.models import ticket_info

def home(request):
    return render_to_response('index.html')

我正在使用http://net.tutsplus.com/tutorials/python-tutorials/python-from-scratch-creating-a-dynamic-website/上的指南

他的目录结构与我的似乎有些不同。我猜想在以后的 django 版本中发生了一些变化。我从未使用过 django,只是尝试一下它是否适用于项目。任何帮助将非常感激。

4

1 回答 1

3

在 urls.py 中尝试这些

url(r'^$', 'tickets.views.home', name='home'),

而不是这些

url(r'^$', 'dcdev1.tickets.views.home', name='home'),

你也可以跑步python manage.py validate,也许你会看到一些有用的东西。

于 2013-08-05T15:47:42.970 回答