【发布时间】:2015-06-15 14:09:44
【问题描述】:
我正在使用 Eclipse + PyDev。我刚刚将这台机器从 Django 1.6 切换到 1.8。在 Django 1.6 下,项目没有错误。现在,在 Django 1.8 下,对我的数据库模型上.objects 的属性的引用,例如
DatabaseModel.objects.filter(...)
把错误告诉我
Undefined variable from import: filter
这些错误不会出现在 models.py 中;仅当我将 DatabaseModel 导入不同的模块并从不同的模块调用它的 .objects 属性的方法时。
如何让 Eclipse 停止报告这些错误?
更多细节:
Eclipse 版本:Kepler Service Release 1
Pydev 版本:3.9.2
我在升级到 django 1.7 时遇到了类似的问题(这就是我在开发环境中保留 django 1.6 版本的原因)。
【问题讨论】:
-
尝试通过左键单击项目->属性->PyDev - PYTHONPATH->添加源文件夹来添加目录PYTHONPATH
-
@Wallace 澄清一下,Django 在我的 PyDev PYTHONPATH 上。 PyDev 可以毫无问题地解决和跟踪 django 导入。只是
.object方法被错误标记为错误。 -
我对这个问题的接近投票数感到困惑。仅 PyDev 标签就有上千个类似的问题。版主,如果有更合适的 stackexchange 站点来解决这个问题,请在评论中提出建议。
-
为什么你认为错误是错误的?你怎么知道 Django 没有更新它的库并弃用某些东西?
-
@Falmarri 这些是 django 的一些关键方法。它们出现在每个版本的 django (docs.djangoproject.com/en/1.8/topics/db/queries) 的文档中,并在新版本的库下工作。它们也不会在
models.py中标记为错误;只有在其他文件中,它们才被标记为错误。问题可能是在 1.7 版 django 更改了他们对 Model 对象进行元分类的方式,但我不知道如何让 eclipse 解决这个问题。
标签: python django eclipse pydev django-1.8