Django Development on Windows

From Littledamien Wiki
Revision as of 23:09, 28 August 2015 by Video8 (talk | contribs) (→‎Mac)
Jump to navigation Jump to search

Overview

Any information relevant to doing Django development on Windows.

Software

Python

(version 2.7.3 ~3.2 is the version referenced by the current Django tutorial)[1]

Django

  • How To Install Django - Django Documentation (version 1.8)
  • Mac: sudo pip install Django
    N.B. The iMac that was purchased in 2015 came with python 2.x installed. I manually installed python 3.4. Typing python on the command line invokes python 2.x. To invoke python 3.x it's necessary to use python3. Similarly, pip will install for python 2.x, while pip3 installs for python 3.x.
  • download link (Windows)

Database

Recommended database is PostgreSQL.

The PostgreSQL server is running on littledamienii. It's not necessary to have a local database server.

However, python does require the psycopg2 package in order to connect to the database.

Mac

  • Download the PostgreSQL installer & run it.
  • Install pip: sudo easy_install pip
  • Django projects that use PostgreSQL databases depend on the psycopg2 package.
    • This should simply be a matter of sudo pip install psycopg2, but that install depends on pg_config, which appears to be part of the "Homebrew" install of PostgreSQL.
    • Don't install PostgreSQL using the EnterprisesDB installer.
    • Install with "Homebrew": brew install postgresql [2]
    • With the Homebrew installation of PostgreSQL, pip should be able to install psycopg2.

See also Python Virtual Environments

Cygwin (Bash shell for Windows)

There is a local version of the distribution.

PyCharm

IDE for Django/Python development

IDE

PyCharm

I have been using PyCharm. There are other options, but this seems to offer a lot.

  • Can connect to databases from within the IDE.
  • Debugger.
  • Runs a server within the IDE for debugging purposes.
    Similar this command from the Django tutorial:
c:/myproject> python manage.py runserver 8080
  • Can create a Django project
    Analog to the following command from the Django tutorial:
c:/myproject> django-admin.py startproject mysite

Other IDEs

Notes on other IDEs as they are used or tested. Esp. any features that they offer that PyCharm does not.

A lot of people simply use vim or notepad++. But those are simply text editors, albeit with pretty-print in the case of notepad++. They don't offer debuggers or database browsers.

Windows

  • Sublime Text

Mac

  • Sublime Text
  • Atom
  • KDevelop

External Links

Debugging

PyCharm

  • Create all Django projects to be debugged from within PyCharm:
    This will create a project environment where the PyCharm debugger can run.
    • File > New Project
    • Project name: [project name]
    • Location: [d:\path\to\parent_dir] (PyCharm will match the actual project directory name to the project name.)
    • Project type: Django Project
    • Click OK
    • Enter app name and template directory in the next dialog if desired.
    • Click OK
  • Run the debugger once the code has been added.
    • Run > Debug ProjectName
    • This will start up a server running the site on `http://127.0.0.1:8080 (or whatever port is configured in the configuration).
    • Set the appropriate breakpoints.
    • Load the site in a browser to test GET requests.
    • Run curl` to test POST requests.
    • PyCharm will stop execution at the breakpoints.

Notes