【问题标题】:Erroneous PyDev Errors with Django 1.8Django 1.8 的错误 PyDev 错误
【发布时间】: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


【解决方案1】:

嗯,实际上让我们说 Django 结构很难理解,所以,PyDev 静态分析器有一些处理 Django 的硬编码技巧......可能他们在 1.8 上改变了,所以,静态分析不再正常工作(参考:https://github.com/fabioz/Pydev/blob/development/plugins/org.python.pydev/src_completions/org/python/pydev/editor/codecompletion/revisited/ModulesManager.java -- 方法:decorateModule)

请将此问题报告为https://sw-brainwy.rhcloud.com/tracker/PyDev/

【讨论】:

  • 谢谢!我遇到了同样的问题,但是使用 PyDev 5.0 Django 1.8 不再遇到这个问题,所以我们假设它已经修复了 :)
猜你喜欢
  • 1970-01-01
  • 2018-01-14
  • 2015-08-22
  • 2015-07-24
  • 2015-06-23
  • 2015-09-09
  • 2013-05-17
  • 2014-02-02
  • 1970-01-01
相关资源
最近更新 更多