/ myapp /上的ViewDoesNotExist无法导入

时间:2017-09-24 12:17:13

标签: django-views django-urls python-2.x django-1.8

我的任务是从1.8升级到1.11,但我需要确保在升级之前至少可以让这个站点运行在1.8(这不是我的代码)。什么是微不足道的问题,但是阻止我提出这个网站。我将以更加djangothonic的方式重构代码,并对这些观点感到震惊:

到目前为止,结构已经重新格式化(省略其他文件夹/文件)

mysite-closed
    -> mysite
        __init__.py
        -> mysite
            __init__.py
            -> settings.py
            urls.py # (1 below)
        -> myapp
            __init__.py
            urls.py # (2 below)
            -> views
                __init__.py
                -> basic.py

mysite.mysite.urls.py(1)

from django.conf.urls.defaults import *
from django.conf import settings

from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
    (r'^admin/', include(admin.site.urls)), 
    (r'^comments/', include('django.contrib.comments.urls')),
    (r'^myapp/', include('myapp.urls')), 
)

mysite.myapp.urls.py(2)

from django.conf.urls.defaults import *
from django.conf import settings

urlpatterns = patterns('myapp.views.basic', 
    (r'^$', 'costs'),
    (r'^about/', 'about'),
)

settings.py

ROOT_URLCONF = 'tcosite.urls'

INSTALLED_APPS = (
    'tco',
)

basic.py

def costs(request):
'''
load of code
'''
    pass

我已经处理了文件夹中的 init .py文件,但我怀疑我可能会在settings.py中忽略某些内容。设置中是否存在某些可能影响视图模块导入的参数?我在urls.py的路径中尝试了各种排列,例如:

myapp.views.basic
mysite.myapp.views.basic
views.basic

我收到的错误消息是:

ViewDoesNotExist at /myapp/
Could not import myapp.views.basic.costs. View does not exist in module myapp.views.basic.

mysite.myapp.views.basic我得到:

ImportError at /myapp/
No module named myapp.views

views.basic我得到:

ImportError at /tco/
No module named views

我还将视图文件夹移到了较低级别,但仍然没有成功。

1 个答案:

答案 0 :(得分:0)

尝试这些文档Django 1.8 urls,您的问题已经解决here