Django development IDE

259

67

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.

Adam Carr

Posted 2008-10-06T16:28:18.830

Reputation: 2 341

Question was closed 2013-12-03T16:24:02.137

PyCharm +! great functionality. makes coding much faster, less references docs to find functions and methods from modules. template support. error highlighting. just be sure in settings you check django. with a plugin downloader it even has a DB navigator. – eusid – 2012-07-01T14:22:53.913

maybe this should be a community wiki? – Skylar Saveland – 2009-12-08T18:47:34.087

Good suggestion! – Adam Carr – 2009-12-09T06:43:20.620

6PyDev 1.5.6 claims to have django integration – juanefren – 2010-04-23T17:13:35.370

@juanefren Yes, the latest PyDev release has Django support, and it's actually quite usable: http://pydev.org/manual_adv_django.html

– Zsolt Török – 2010-08-03T21:01:02.703

@zsolt-torok I tried about 2 months ago and like it very much. But I still prefer gedit simplicity (with some plugins). – juanefren – 2010-08-03T22:46:04.580

2

There is a wiki for this: http://wiki.python.org/moin/PythonEditors

– Vegar Westerlund – 2011-02-08T18:32:35.190

Is Visual studio 2015 better than pycharm ? – Amandeep Dhiman – 2016-09-07T14:29:31.510

Answers

104

I use Eclipse and a plain vanilla PyDev. 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

Posted 2008-10-06T16:28:18.830

Reputation: 4 488

@AndréTerra now? – Sarge Borsch – 2013-10-05T10:23:58.013

2"Now" as in April 29th, 2011 as per the timestamp. – Andy Terra – 2013-10-07T20:17:18.997

8

+1, and now http://pydev.org now touts django support as one of its features

– Andy Terra – 2011-04-29T13:01:39.510

188

There is PyCharm from JetBrains which supports Django and Google Apps. It looks promising.

Note: You need to buy a license for the Professional version if you want Django support. The Community version desn't support Django.

idursun

Posted 2008-10-06T16:28:18.830

Reputation: 5 505

New PyCharm is now available with lot of useful changes/new features: http://blog.jetbrains.com/pycharm/2013/02/pycharm-2-7-is-available-back-to-core-python/

– Lukasz Koziara – 2013-02-08T14:17:46.510

6PyCharm is really complete. Recommended. The bad news is that you need a license to use it... – Salvatorelab – 2013-09-23T09:59:54.560

16the community edition does not support django, you have to get the professional edition :( – Syler – 2013-10-08T05:20:09.823

4PyCharm 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 – 2010-10-20T21:58:10.843

I'm using Pycharm 1.0.1 and loving it, complete with Django template intellisense. – jaketrent – 2010-11-30T15:15:38.970

I've been loving pycharm so far. 1.0 is a great start, but certainly not a full featured suite yet. – bdd – 2010-12-08T20:25:01.583

Concerning the previous comment, I'm currently using the community edition to test/debug my Django model and it works great. – Bezewy – 2015-06-02T17:56:49.437

1

JetBrains now has an education program, where students doing noncommercial development can use all of their professional tools for free for a year (pretty sure this can be renewed, however). A great way to get a taste before you buy the full license. https://www.jetbrains.com/student/

– dcgoss – 2015-08-15T18:54:17.037

43

I use Vim:

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

[UPDATE]

Sublime Text 2 is pretty awesome. It supports a lot of Vim commands if you want them: Vintage Mode

It has a nice package manager: http://wbond.net/sublime_packages/package_control

I use these packages so far:

Djaneiro

SetDjangoSyntax

CoffeeScript

SublimeLinter

Theme - Soda

SideBarEnhancements

I still love Vim but ... did I mention that Sublime Text plugins are written in Python?

Skylar Saveland

Posted 2008-10-06T16:28:18.830

Reputation: 7 141

pardon the overly-optimistic readme ... it was basically just my .vimrc and config. – Skylar Saveland – 2012-02-29T17:50:07.013

3vim can also have plugins in Python :P – przemo_li – 2012-08-09T13:05:15.753

good call, @przemo_li :D – Skylar Saveland – 2012-08-09T13:06:23.733

42

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

S.Lott

Posted 2008-10-06T16:28:18.830

Reputation: 313 315

3

Also checkout http://code.google.com/p/django-komodo-kit/

– Sridhar Ratnakumar – 2009-10-04T02:08:15.743

4Another vote for this. It works on Linux and Windows, plus it's free. – imns – 2010-10-17T16:15:28.117

Komodo is no longer free – Homunculus Reticulli – 2016-08-08T22:18:57.860

31

Neil

Posted 2008-10-06T16:28:18.830

Reputation: 3 847

1Yup, throw in a plugin here and there and it's a perfect environment for Django development. – Filip Dupanović – 2012-03-12T16:17:56.727

1And plugins are a piece of cake to install. :) – Web_Designer – 2012-03-29T00:21:06.397

2A few handy plugins: Djanerio for autocompletion, Django DocSearch for doc search (option-shift-D) – Philip007 – 2013-05-12T03:53:34.667

1

ST2 is awesome but no match for Pycharm. However for various reasons people prefer ST2 (light, extensible) so here's a list of useful plugins for ST2+django/python to get it going : http://stackoverflow.com/q/18914386/781695

– user – 2013-09-20T19:37:48.233

Sublime + predawn theme is really nice http://jamiewilson.io/predawn/

– Neil – 2014-08-10T02:39:44.140

For those looking for a free/open source solution, GitHub's Atom or Adobe's Brackets may be interesting alternatives to Sublime.

– Ariel – 2015-08-05T14:53:23.533

Can you refactor with sublimetext ? It's not an IDE .. – amdev – 2017-11-23T08:22:23.880

21

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

Posted 2008-10-06T16:28:18.830

Reputation: 8 887

16

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.

Update 2013: Unfortunately, Quanta+ has been dead for years now, and there's no hope that it will ever be resurrected. Also, there's no other usable HTML editor out there, so it's Kate all the time now.

Javier

Posted 2008-10-06T16:28:18.830

Reputation: 51 470

14

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, which has some Django-specific project setup features the ability to debug Django template files.

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

Posted 2008-10-06T16:28:18.830

Reputation: 21 236

IntelliJ Python plugin seem to be only available in the Ultimate edition. – Wernight – 2009-12-17T11:42:50.747

14

You guys should checkout PyCharm! It is the first decent Django IDE.

Nixarn

Posted 2008-10-06T16:28:18.830

Reputation: 718

14

PyCharm. It is best the IDE for Python,Django, and web development I've tried so far. It is totally worth the money.

Lud

Posted 2008-10-06T16:28:18.830

Reputation: 1

++ on PyCharm. The only disappointment is lack of auto-complete in templates. – Bryce – 2012-01-20T08:13:51.827

8

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

Powerlord

Posted 2008-10-06T16:28:18.830

Reputation: 72 844

1It worked just fine when I tried it. – epochwolf – 2008-10-06T16:36:40.997

I'm a big fan of Eclipse + PyDev. Works great with Django. in fact, Django projects are offered as a project type when creating something from scratch. – Mackie Messer – 2017-12-31T07:53:47.520

6

As far as I know there is not "an IDE" for Django, but there are some IDEs 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

Posted 2008-10-06T16:28:18.830

Reputation: 6 665

5

There is an actual Python extension for Visual Studio: http://pytools.codeplex.com/. It's absolutely fantastic. It feels the same as if I were coding in any native Visual Studio language. The extension is even compatabile with Django. And best of all: it's totally free. Even for Visual Studio, it only requires the Visual Studio Shell to work, which is completely free.

Jonathan Gleason

Posted 2008-10-06T16:28:18.830

Reputation: 1 382

4

PyCharm, definitely. I tried them all (almost), but PyCharm is the one I found most useful for any heavy development.

For simple, one time, scripts I use whatever comes to mind (TextMate, Vim, Emacs, TextWrangler, etc., you name it).

Ioan Ionas

Posted 2008-10-06T16:28:18.830

Reputation: 1

4

I have used Eclipse with PyDev and PyCharm. PyCharm is definitely the best IDE for Django/Python I have tried. It does proper template highlighting and auto-completion for all objects. It also does cross-file referencing.

It's quite expensive, but definitely the best Django IDE I have tried. You can try a 30 day evaluation at http://www.jetbrains.com/pycharm/download/.

user88357

Posted 2008-10-06T16:28:18.830

Reputation: 1

4

Now you can also use Visual Studio 2010. Here's how:

  • Download and install Python Tools for Visual Studio.
  • Create a new project from existing code (menu FileNewProject From Existing Code...)
  • Specify your Django project folder and use the defaults.
  • Right-click on manage.py and choose Set as Startup File.
  • In your project properties Debug tab, add "runserver" in Script Arguments.
  • You can set break points, and attach to the Python process for debugging. If you want to debug without having to "attach to process," use "runserver --noreload" in your script arguments. However, the "--noreload" means you'll have to stop and restart the Django development web server manually (to recognize your code changes).

This is a nice setup if you already use Visual Studio.

Python Tools has been updated. It has built in support for Django now.

dalenewman

Posted 2008-10-06T16:28:18.830

Reputation: 939

3

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

utku_karatas

Posted 2008-10-06T16:28:18.830

Reputation: 4 147

2

I really like E Text Editor 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 Text Editor 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

Posted 2008-10-06T16:28:18.830

Reputation: 4 278

vim's omnicompletion is pretty good. – Skylar Saveland – 2009-12-08T18:53:54.357

2

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

Posted 2008-10-06T16:28:18.830

Reputation: 2 843

2

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 whole 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

Posted 2008-10-06T16:28:18.830

Reputation: 10 912

2

If you like Vim as an editor, here are some suggestions on how to tune it (up to the point of a full fledged IDE) for Django development: http://code.djangoproject.com/wiki/UsingVimWithDjango.

Webthusiast

Posted 2008-10-06T16:28:18.830

Reputation: 728

1

drj

Posted 2008-10-06T16:28:18.830

Reputation: 17

1

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

Posted 2008-10-06T16:28:18.830

Reputation: 105

4intellisense is M$ word for code completion – Kugel – 2010-03-24T21:48:24.053

1

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 X Window and seems to be more glitchy.

zenWeasel

Posted 2008-10-06T16:28:18.830

Reputation: 1 479

Note that Wing 5 (currently in beta) no longer requires X11 on OS X and should look less dorky (or hopefully entirely non-dorky ;-). – Wingware – 2013-05-16T14:49:48.123

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 – 2010-04-15T09:09:18.150

1

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

Imran

Posted 2008-10-06T16:28:18.830

Reputation: 43 103

1

I made a blog post about NetBeans' new and upcoming support for Django. When paired with its already fantastic Python, JavaScript, HTML and CSS support, it's a strong candidate in my mind!

kkubasik

Posted 2008-10-06T16:28:18.830

Reputation: 2 238

1

Geany

It is GTK2 based, fast, lightweight, available for Linux and Windows.

Roberto Rosario

Posted 2008-10-06T16:28:18.830

Reputation: 1 147

0

The Wing IDE is a good IDE to use!

shen0956

Posted 2008-10-06T16:28:18.830

Reputation: 23

0

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

Posted 2008-10-06T16:28:18.830

Reputation: 32 785

0

TextMate, Firebug, and pdb. The latter one saved me gazillion of times :)

Dmitry Shevchenko

Posted 2008-10-06T16:28:18.830

Reputation: 23 703

0

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

CppLearner

Posted 2008-10-06T16:28:18.830

Reputation: 7 061

The link is broken. Google Code closed down.

– Peter Mortensen – 2017-09-03T13:19:22.470

0

I have consistently used Vim or Kate, but I would prefer a full-blown IDE. Given it is not as heavy as Visual Studio.

Dipankar Sarkar

Posted 2008-10-06T16:28:18.830

Reputation: