“from .import views”:未解决的导入

时间:2015-08-19 00:03:09

标签: python django eclipse django-views pydev

我正在关注Django 1.8 tutorial。在我的项目mysite中,有一个源文件夹polls。在文件夹中有views.py模块,其中定义了index函数。并且有一个urls.py文件:

from django.conf.urls import url
from . import views

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

这是本教程的建议,Django可以很好地处理代码。但是Eclipse (PyDev)unresolved imports抱怨views。如果我删除from . import views并使用自动更正功能, PyDev 会推荐import views,现在Django抱怨“名称视图未定义” 。我在文件夹中使用和不使用__init__.py进行了尝试,两者都给出了相同的结果。

我正在使用 Django(1.8) PyDev(4.2)的最新版本。

谢谢!

2 个答案:

答案 0 :(得分:2)

from django.conf.urls import url
from . import views

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

你需要的是改变。与您的父文件夹。这就是我为解决问题所做的工作。例如,我的项目的文件夹被称为博客,所以我做了 执行此操作来自博客导入视图而非来自。导入视图

from django.conf.urls import url
from blog import views
urlpatterns = [
    url(r'^$', views.post_list, name='post_list'),
    url(r'^post/(?P<pk>[0-9]+)/$', views.post_detail, name='post_detail'),
]

答案 1 :(得分:1)

该项目是使用 PyDev 向导创建的 Django项目。创建时,文件夹polls不是源文件夹。结果,没有进行代码分析。所以我将文件夹polls(位于项目文件夹mysite内)更改为源文件夹。现在分析了代码并引发了unresolved import错误。

修复方法是将polls更改回普通文件夹(从 PYTHONPATH 中删除),而是将顶级项目文件夹mysite设置为源文件夹。现在 PyDev Django 运作良好。