首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法导入site.views。错误是:没有名为视图的模块。

无法导入site.views。错误是:没有名为视图的模块。
EN

Stack Overflow用户
提问于 2013-01-25 01:43:51
回答 1查看 637关注 0票数 0

戴尔斯

./ksp

代码语言:javascript
复制
__init__.py
jquery.pngFix.js
manage.py
passenger_wsgi.py
settings.py
site/
site_media/
templates/
tmp/
urls.py

./ksp/site

代码语言:javascript
复制
__init__.py
models.py
models_.py
myforms.py
urls.py
views.py
views_back.py

文件

./ksp/passenger_wsgi.py:

代码语言:javascript
复制
import os, sys
sys.path.insert(0,'/usr/lib/python2.7/site-packages/django-1.3')
sys.path.append('/home/p/pravicom/ksp/')
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

./ksp/urls.py:

代码语言:javascript
复制
from django.conf.urls.defaults import *
urlpatterns = patterns('',
    ('', include('site.urls')),
)

./ksp/site/urls.py:

代码语言:javascript
复制
import views
from django.conf.urls.defaults import *
from django.conf import settings
from django.contrib.auth.views import login, logout

urlpatterns = patterns('',
    (r'^$', 'views.ShowMain'),
#....
)

urlpatterns += patterns('',
    (r'^site_media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT}),
)

./ksp/site/views.py:

代码语言:javascript
复制
from django.shortcuts import render_to_response
from models import *
from myforms import *
from django.http import HttpResponseRedirect, HttpRequest
from django import forms
from django.template import RequestContext
from django.contrib.auth.models import User
from django.contrib import auth
from django.contrib.auth.decorators import login_required
import os, urlparse, Image, sys
from django.core.paginator import Paginator, InvalidPage, EmptyPage


def custom_proc(request):
    return{
        'user': request.user
    }

def ShowMain(request):
    all_posts = Posts.objects.all().order_by('-id')

    return render_to_response("index.html", {'all_posts':all_posts}, context_instance=RequestContext(request, processors=[custom_proc]))

./ksp/settings.py:

代码语言:javascript
复制
...
ROOT_URLCONF = 'urls'
INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
#    'django.contrib.sites',
#    'django.contrib.flatpages',
    'django.contrib.comments',
    'site',
)
...

结果:

异常类型: ViewDoesNotExist异常值:

无法导入site.views。错误是:没有名为视图的模块。

EN

回答 1

Stack Overflow用户

发布于 2013-01-25 01:58:40

site与Python的site模块发生冲突时,调用您的模块是一个糟糕的名称。你应该把它重命名为其他不会碰撞的东西。您还可以在通往sys.path的路径前面加上您的路径来使其工作。

代码语言:javascript
复制
import os, sys
sys.path.insert(0,'/usr/lib/python2.7/site-packages/django-1.3')
sys.path.insert(0, '/home/p/pravicom/ksp/')

然而,这充其量只是一种顽固不化的做法,而且可能会以其他方式来咬你。最好的答案是重命名你的包裹。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14514019

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档