Django es un framework de alto nivel escrito sobre Python, cuyo principal objetivo es facilitar el desarrollo rápido de aplicaciones web. Proporciona una capa de abstracción sobre muchos de los aspectos más complicados del desarrollo web (MVC, Seguridad, etc.) de tal forma que los desarrolladores se puedan centrar en el desarrollo de la propia aplicación, delegando estas monotonas tareas en el propio framework. Es gratuito y open source.

Tal y como mencionan sus creadores en en la web oficial Django Project, algunas de las características principales de Django son:

  • Ridiculously fast: Django was designed to help developers take applications from concept to completion as quickly as possible.
  • Reassuringly secure: Django takes security seriously and helps developers avoid many common security mistakes.
  • Exceedingly scalable: Some of the busiest sites on the Web leverage Django’s ability to quickly and flexibly scale.

A continuación se muestran los pasos principales a seguir para poder crear nuestra primera aplicación en Django:

Instalar python3:

  • sudo apt-get install python3
  • sudo apt-get install python3-venv

Crear directorio para el proyecto django:

  • mkdir /home/user/djangoprj

Crear máquina virtual y activarla:

  • mkdir /home/user/venvs
  • cd / home/user/venvs
  • python3 -m venv env35dj20
  • source /home/user/venvs/env35dj20/bin/activate

En este punto tenemos la máquina virtual instalada y activa. Instalamos Django 2.0:

  • (env35dj20) cd /home/user/djangoprj
  • (env35dj20) pip3 install Django==2.00

Creamos el archivo requirements añadiendo las dependencias:

  • (env35dj20) pip3 freeze >> requirements.txt

Creamos el proyecto (dentro de "home/user/djangoprj):

  • (env35dj20) django-admin.py startproject blog
  • (env35dj20) cd blog
  • (env35dj20) django-admin.py startapp post

Creamos el repositorio git y hacemos el primer commit:

  • (env35dj20) git init
  • (env35dj20) git add .
  • (env35dj20) git commit -a -m 'Initial commit of my personal blog'
  • (env35dj20) git remote add origin https://github.com/<repository>.git
  • (env35dj20) git push -u origin master

Inicializamos la base de datos con el primer "migrate" y arrancamos el server:

  • (env35dj20) ./manage.py makemigrations
  • (env35dj20) ./manage.py migrate
  • (env35dj20) ./manage.py runserver