Django logo

Capítulos

La idea de este post es que, en poco tiempo, puedan crear el primer proyecto en Django.

En mi caso usaré la distribución Ubuntu, si usas otra distribución pude que éstas indicaciones varíen un poco. Para los que recién empiezan, Django es un Framework para el desarrollo de aplicaciones Web basado en el lenguaje de programación Python. Django es usado por grandes empresas para sus proyectos web como la NASA, New York Times, Disqus, Instagram, Pinterest, etc.

Primero lo primero

Lo recomendable es crear un ambiente de desarrollo antes de empezar cualquier proyecto. No importa el lenguaje. En el post anterior escribí sobre cómo armar un entorno de desarrollo. Antes de seguir con este post, te recomiendo que veas el otro.

Instalando Django

Una vez instlado y configurado nuestro entorno de desarrollo, nos aseguramos de tenerlo activado:

~$ source envs/mi_proyecto/bin/activate
(mi_proyecto) ~$

Chequeamos que nuestro entorno esté limpio:

(mi_proyecto) ~$ pip freeze         # no muestra nada

¡Ahora si instalamos Django!

(mi_proyecto) ~$ pip install Django

Ejecutamos nuevamente pip freeze:

(mi_proyecto) ~$ pip freeze
Django==1.7.4
argparse==1.2.1
wsgiref==0.1.2

Listo! Ya tenemos Django instalado en el entorno virtual “miproyecto” :)

## Creando el primer proyecto con Django

El primer paso es crear un nuevo proyecto Django. Básicamente, quiere decir que vamos a correr algunos scripts propios de Django que nos ayudará en la creación de la estructura de archivos de Django. Los nombres de algunos archivos y directorios son muy importantes para Django. No deberías cambiar los nombres, tampoco moverlos a otro lugar.

Bueno, arrancamos!

Primero creamos la carpeta “proyectos” (en cualquier otro lado fuera de la carpeta “envs”) y entramos a la misma para crear el proyecto. Esto lo hacemos de la siguiente manera (recordá que siempre tenemos que tener activo el entorno virtual):

~$ source envs/mi_proyecto/bin/activate
(mi_proyecto)~$ mkdir proyectos
(mi_proyecto)~$ cd proyectos
(mi_proyecto)~/proyectos$ mkdir mi_proyecto
(mi_proyecto)~/proyectos$ cd mi_proyecto
(mi_proyecto)~/proyectos/mi_proyecto$ django-admin.py startproject mi_proyecto .

No te olvides del punto final (.), esto indica que vas a crear el proyecto en la carpeta actual.

Al finalizar va a crear una carpeta con el nombre que le pusimos al proyecto quedando de la siguiente forma:

proyectos
  ├── mi_proyecto
     ├── manage.py
     └── mi_proyecto
             └── settings.py
             └── urls.py
             └── wsgi.py
             └── __init__.py

Especificar dependencias con PIP

(mi_proyecto)~/proyectos/mi_proyecto$ pip freeze > requirements.txt

Esto produce un archivo de requerimientos en el formato que pip puede entender, el archivo de requerimientos detalla las dependencias que tiene un ambiente, su formato acepta tanto orígenes del pypi, paquetes en formato tar.gz repositorios en git, mercurial y svn. Comúnmente nos encontraremos de un requirements.txt en muchos proyectos.

Si ejecutamos cat requirements.txt vamos a ver el contenido del archivo requirements.txt

Django==1.7.4
argparse==1.2.1
wsgiref==0.1.2

Levantar el servidor y ver nuestro proyecto en el navegador

En este punto ya tenemos la base de nuestro proyecto y ya podemos levantar el servidor web ejecutando:

(mi_proyecto)~/proyectos/mi_proyecto: $ python manage.py runserver
Validating models...

0 errors found
February 09, 2015 - 17:59:46
Django version 1.7.4, using settings 'mi_proyecto.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

Ingresamos a http://127.0.0.1:8000/

Django It worked

¡Excelente! Acabas de crear tu primer sitio web y ejecutarlo en un servidor web! ¿No es genial?

Próximo capítulo -> Django: Modelos

Posted