今天我的任务是从pydev的django项目中移除小红色X.大多数情况下,这涉及使用pydev修复导入问题。
我正在使用South进行数据库迁移。南(如果你不知道)生成python模块,pydev不喜欢它们。我不想编辑南方代码,因为它是生成的。
有没有办法指示pydev从分析中排除某些包?像#@UndefinedVariable
之类的东西,除了整个模块?理想情况下,我想忽略名为“迁移”的包。
答案 0 :(得分:5)
在南方,我在south/management/datamigration.py
和south/management/schemamigration.py
的模板中添加了“#@ PydevCodeAnalysisIgnore”。它不会让我忽略整个包,但是很好地满足了我的目的。
答案 1 :(得分:1)
我有很多生成的代码。为了避免PyDev投诉,我按如下方式对这些模块进行后处理(bash脚本):
for file in `find gen -name '*.py'`; do
mv $file $file.bak
echo '#@PydevCodeAnalysisIgnore' > $file
cat $file.bak >> $file
rm $file.bak
done
答案 2 :(得分:1)
是的,您可以将#@PydevCodeAnalysisIgnore
放在要忽略的每个文件的开头,但这意味着您要编写IDE,这不是最佳做法。我更喜欢改变我的项目设置,以便
在您的特定情况下,我遇到了完全相同的问题,并决定将Eclipse迁移排除在Eclipse项目之外。在我需要编辑这些自动生成的文件的少数情况下,我没有使用Eclipse。
更新: 另一个选择是右键单击您的项目并选择PyDev - >删除错误标记 - 但如果有任何您不想隐藏的错误,请不要这样做!
答案 3 :(得分:0)
尽管就禁用单个迁移文件而言,这与该问题没有直接关系,但PyDev内置的代码分析功能使我在Windows上感到非常头疼,因为在Mac OS上,相同的项目和设置没有问题。这使我想到了一个问题,即如何禁用某些资源的分析。该项目有一个很大的文件夹部分,使用Eclipse->(该文件夹)-> Properties-> Resources-> Filter(排除)甚至没有帮助排除此资源。
将排除项与使用PyLint一起修复了异常缓慢的构建时间。 YMMV。