tags:

views:

12270

answers:

21

I have done a little django development but it has all been in a text editor. I was curious what more advanced development tools others are using in their django development. I am used to using Visual Studio for development and really like the intellisense, code completion, and file organization it provides and would like to find something (or a combination of tools) that would provide some of this in the django/python environment.

+6  A: 

Eclipse has the PyDev plugin for python development. Unfortunately, I'm not sure how well it integrates with Django.

R. Bemrose
It worked just fine when I tried it.
epochwolf
+17  A: 

I use Komodo Edit. Check out the Open Komodo Edit.

S.Lott
Also checkout http://code.google.com/p/django-komodo-kit/
Sridhar Ratnakumar
Another vote for this. It works on Linux and Windows, plus it's free.
bababa
+5  A: 

As far as I know there is not "an IDE" for Django but there are some IDE's that support Django right out of the box, specifically the django syntax for templates, the name is komodo and it has a lot of features but it's not cheap, if you are not worried about source control or debugging then there is a free version called komodo edit

Gustavo Rubio
+20  A: 

I use Eclipse and a plain vanilla PyDev http://pydev.sourceforge.net/. There isn't any specific Django functionality. The best I came up with was setting up a run profile to run the development web server. If you add the web tools project (WTP), you'll get syntax highlighting in your templates but nothing that relates to the specific template language. Pydev is a decent plugin and if you are already familiar with Eclipse and use it for other projects it is a good way to go. I recall Netbeans starting to get Python support but I have no idea where that is right now. Lots of people rave about Netbeans 6 but in the Java world Eclipse still reigns as the king of the OSS IDEs.

Sam Corder
+1  A: 

I really like E Texteditor as it's pretty much a "port" of Textmate to Windows. Obviously Django being based on Python the support for auto-completion is limited (there's nothing like intellisense that would require a dedicated IDE with knowledge of the intricacies of each library), but the use of snippets and "word-completion" helps a lot. Also, it has support for both Django Python files and the template files, and CSS, HTML, etc.

I've been using E for a long time now, and I can tell you that it beats both PyDev and Komodo Edit hands down when it comes to working with Django. For other kinds of projects, PyDev and Komodo might be more adequate though.

dguaraglia
vim's omnicompletion is pretty good.
skyl
+2  A: 

I've also had good results with Eclipse and Pydev. Although I still require a shell opened to the project directory to run manage.py commands. I've also been using it with the Bazaar plugin for revision control and syncing code with the server.

Peter Shinners
+5  A: 

I use Kate (KDE Advanced Text Editor) for most of my development, including Django. It has both a Python and Django Templates syntax higlighting. I switch to Quanta+ when a significant part of the project involves HTML.

Since it uses Kate's KPart, it's just as good for editing the Python parts, and for the HTML templates i have the whole Quanta+ tools, while still highligting Django-specific tags.

Javier
+1  A: 

I use Kate as well. Kate's simplicity is its biggest feature. It doesn't get in your way. (This is of course highly subjective opinion)

Kate includes a Python code browser plugin. But it isn't useful IMO. No automatic updates when you change the code/view. Also when you update, the whle tree is collapsed and you have to expand it again yourself. Too many clicks.

Instead, I use the Source Browser plugin that comes with Pâté. It does cause Kate to freeze temporarily sometimes, but no crashes or anything of that sort so far.

Shameless blog plug: more on using Django with Kate(Pâté)

muhuk
+1  A: 

Editra supports Django Template Language syntax highlighting. You can configure it either as a better Notepad or a basic IDE.

Imran
A: 

I have consistently used VIM or kate, but would prefer a full blown IDE. Given it is not as heavy as visual studio.

+10  A: 

I am beginning to enjoy working with Aptana Studios + PyDev (and other) plugins for all sorts of web application development. As you can tell, it is built on top of the powerful Eclipse, but is tailor-designed to focus on web application development.

ayaz
A: 

I made a blog post about Netbean's new and upcoming support for django. When paired with its already fantastic python, js, html and css support, its a strong candidate in my mind!

kkubasik
+3  A: 

Well I've been using my own one. Recently released an Alpha. Here it is at pfaide.com/

utku_karatas
+3  A: 

Wow, I thought everyone used vim. I've started a repo to have many branches with great configs and features:

http://github.com/skyl/vim-config-python-ide

If you fork and add your own, I will be your best friend.

skyl
+1  A: 

NetBeans for Python is my current favorite (lighter and so much easier to install than Eclipse I found). Supports simple refactoring, autocompletion, errors/warnings...

Eclipse Aptana PyDev probably one of the most complete free IDE nowadays (haven't tested a lot)

Wingware Python IDE a commercial IDE.

IntelliJ IDEA Ultimate Edition another commercial IDE which has also a plugin for Python that is under heavy development. I saw some demo which look very promising on the auto-completion (for templates and Python).

Vim which I still use a small touch-fix application. See also: Extra tweaks for Django.

Wernight
IntelliJ Python plugin seem to be only available in the Ultimate edition.
Wernight
A: 

I like eclipse + pydev and/or eric, myself. The new version of pydev has some pretty awesome code completion support.

Since I only use eclipse for pydev, I use a slim install of just the Platform Runtime Binary + pydev + Subclipse.

Seth
A: 

TextMate with the django and django-html bundles installed gives you syntax highlighting and great extensibility. It is lightweight and fun to use. Here is a link to a code completion project for TextMate with python (which I haven't used myself). As for "intellisense" (which I understand to be inline-doc reference), TextMate has that too.

Travis
intellisense is M$ word for code completion
Kugel
+1  A: 

The Wingware editor from http://www.wingware.com is Python specific with very good auto-completion for Python/Django/Zope, etc.

It has a built in Python shell to run snippets (or select and run) and support for Mercurial/Git, etc and a built-in unittest/nose/doctest test runner. It's commercial though but as it is written in Python it's cross platform. I bought it a while ago and thought it looked dorky, but I've tried them all and keep coming back. Caveat that I am a Windows guy with no Emacs or VIM skills, so leveraging that was not an option. And the Mac version requires XWindows and seems to be more glitchy.

zenWeasel
As for me being an emacs guy, I can say that I really like Wing IDE's mimicking of emacs' key bindings. Keyboard macros work, and you can even use many common M-x commands.
heyman
A: 

textmate, firebug, pdb. The latter one saved me gazillion of times :)

Dmitry Shevchenko
+6  A: 

There is PyCharm from Jet Brains which supports django and google apps. Looks promising.

idursun
PyCharm has now been released in a stable version. The integrated Django and Python shells work well and autocomplete works like a charm (PyCharm after all ;). Unfortunately, do not expect autocomplete from your templates yet.
Radek
A: 

ulipad is a good one. http://code.google.com/p/ulipad/

JohnWong