我正在尝试让pydev从模型数据中自动完成我的变量,但是现在我无法做到这一点。
我在
中配置了PYTHONPATHWindow->Preferences->PyDev->Interpreter - Python
包括django文件夹和我的项目文件夹。
然后,如果我有这样的模型:
class Team(models.Model):
name = models.CharField(max_length=50)
id = models.IntegerField()
并从同一个django项目的另一个文件导入此文件
from MyProject.MyApp.models import Team
例如,如果我执行代码完成(我使用CTRL + SPACE向我显示autocompletion optiosn)
team = Team.objects.[CTRL+SPACE]
但是如果我想'自动完成't的变量,它就不起作用了。例如
team.[CTRL+SPACE]
没有给我任何选择。 有关如何解决问题的任何想法? 感谢
更新:我一直在深入挖掘问题的根源,它与路径配置或自动完成配置无关,似乎与检测对象的类型有关(系统无法检测到该团队是Team对象,因此它不显示对象属性)。
答案 0 :(得分:2)
您是否已将您的站点包和项目文件夹添加到PyDev Pythonpath?
右键单击项目文件夹并...
PyDev>设置为PyDev项目
再次右键单击...
属性> PyDev - PYTHONPATH
单击“外部库”。 单击“添加源文件夹”。 选择项目文件夹以及您的站点包文件夹。如果你正在使用virtualenv,当然,为什么你不会;)你会想要选择适当的virtualenv的网站包。您不必选择系统site-packages文件夹。
现在让我们检查自动完成设置...... 窗口>偏好> PyDev>编辑>代码完成
除了右括号外,我设置了自动完成功能,自动完成延迟为0.我也不建议启用自动导入功能。
希望能让你前进!
答案 1 :(得分:0)
Model.object自动完成被破坏,或者至少是在2008年:
http://www.mail-archive.com/django-users@googlegroups.com/msg52874.html
您使用的是上一个版本吗?