我在 Pycharm Django 项目中收到 继承方法的未解析属性引用。
我尝试过但没有运气:
注意:此问题似乎仅发生在继承的方法上。直接导入类时,自动完成建议会正确传播。
这不是错误。这简直就是无法理解Django大量元编程的linter。 Django 的模型有很多魔力。例如,如果您定义字段
foo = models.IntegerField()
,则 self.foo
不是 IntegerField
,而是该记录的
int
。这种元编程可能可以被智能 linter 理解,但这需要大量分析。
Pycharm 专业版有一个 linter,其中包含一些推理。 Django 的元编程,尽管(可能)很多都是硬编码的。还有像 pylint-django` 这样对 Django 有一定了解的工具
但是没有错误,只是
linter 被混淆了。