Using PyCharm with Django in a Buildout
To introduce a coworker to our project and Django in general, I suggested that he would try PyCharm, a Python IDE. One of the (many) nice things of PyCharm is that you can easily jump to the place where something is declared—ideal for exploring a project.
When you use for instance a virtualenv, PyCharm will automatically detect which packages are installed. But PyCharm also supports buildout.
As the
documentation
rightfully claims, PyCharm can automatically detect the use of
buildout and enables support for it automatically. However, it defaults
to using the path from the bin/buildout
script. This usually only
adds the setuptools and zc.buildout eggs, so it is of little use.
Assuming you are using the
djangorecipe buildout
recipe, there is also a bin/django
script available. And that
script includes the paths to all the packages you have specified in
your buildout.
To do this, go to the settings, search for “buildout” and point PyCharm to the right script.
Once you have done that, you can immediately see that code completion works, but CTRL+click also takes you to the declarations inside e.g. the Django package.