domingo, 23 de septiembre de 2012

Creando Aplicaciones Web con Django 1.4


Después de mucho tiempo de estar viendo tutoriales en internet, logré hacer una aplicación completamente funcional con el framework de python Django.  Es importante aclarar  que es indispensable que usted tenga conocimientos básicos de python; para continuar, les recomiendo el libro llamado inmersión en python. el cual puedes descargar de la red.

En este tutorial voy a crear una aplicación que tenga integración con base de datos, autenticación, reportes, JQuery, Css y alguna otra cosa que se nos ocurra.

En esta oportunidad voy a realizar una aplicación que mi esposa me había pedido hace mucho tiempo, para guardar sus recetas de cocina, hay varias como estas en la red, solo que aquí nos iremos un poco mas alla de Django y le colocaremos los juguetes adicionales como JQuery y CSS.

Empecemos:

Este tutorial esta basado en la plataforma Linux, en la distribución que mas le guste, yo utilizo normalmente Ubuntu, actualmente en la versión 12.04. En el caso de las personas que usan Windows, hay muchos manuales en la red de como hacerlo, para ello les invito a ver un excelente vídeo tutorial de Alex Dzul en este enlace.

En Ubuntu como en todas las distribuciones linux, ya viene instalado el python, por lo que no necesita instalarlo, entonces procedemos a instalar Django, el cual esta disponible en código abierto bajo la licencia BSD. Se requiere la versión de Python 2.5 o superior, es importante saber que no depende de otras bibliotecas de Python. Y hay varias maneras de conseguirlo e instalarlo:

1. con los repositorios que trae sus sistema operativo:

$ sudo apt-get install python-django

2. Con  easy_install o pip, estos son instaladores de paquetes python, en cualquier sistema operativo, solo hay que tener previamente instalado alguno de los dos paquetes y proceder:

Para utizar easy_install, este debe instalarse previamente en Ubuntu con:

$ sudo apt-get install python-setuptools

Luego procedemos a instalar Django

$ sudo easy_install django

pip es una herramienta para instalar y administrar paquetes de Python, como las que se encuentran en el índice de paquetes de Python. Es un reemplazo para easy_install.

$ sudo apt-get install python-pip

Para instalar django con pip solo hay que tipear:

$ sudo pip install Django 

3. Bajarlo directamente de la página de django http://www.djangoproject.com, esta es una de las mejores opciones porque estarás bajando la última versión o release de django. Descargamos este comprimido, normalmente se hace en Descargas y luego lo descomprimimos en nuestra carpeta personal

$ tar xzvf Django-1.4.1.tar.gz
$ cd Django-1.4.1

Luego dentro de la carpeta ejecutamos el setup.py para instalarlo en nuestro sistema operativo.

$ sudo python setup.py install

Una vez que termine probamos la instalación en python

fquivera@fquivera-VGN-CR490E:~$ python
Python 2.7.3 (default, Aug  1 2012, 05:16:07) 
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>> 

Si no produce ningún error esta correctamente instalado, esta prueba es efectiva para cualquiera de las formas que escogió para instalar.

Muy bien, ya que tenemos instalado Django, vamos a proceder a crear nuestro primer proyecto, para ello nos ubicamos en nuestra carpeta personal y creamos la carpeta donde vamos a realizar nuestro proyecto.

$ cd
$ mkdir django
$ cd django

Ahora vamos a crear nuestro primer proyecto que llamaremos recetas con el siguiente comando:

$ django-admin.py startproject recetas

Este nos creará una carpeta llamada recetas, entramos en ella y tenemos un archivo y una carpeta

$ cd recetas

recetas
├── manage.py
└── recetas
    ├── __init__.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py

Expliquemos cada uno de estos archivos:

La carpeta superior recetas es sólo un contenedor para su proyecto. Su nombre no le importa a Django, usted le puede cambiar el nombre a cualquier otro que le guste.

manage.py: Una utilidad de línea de comandos que te permite interactuar de distintas formas con este proyecto Django. Utilizaremos muchas veces este programa utilitario a medida que avancemos en nuestro proyecto.

La carpeta interna recetas es un paquete real Python para el proyecto. Su nombre es el nombre del paquete Python que tendrá que utilizar para importar cualquier cosa en su interior (por ejemplo, la importación recetas.settings).

recetas / __init__.py: Un archivo vacío que le dice a Python que esta carpeta debe considerarse como un paquete Python. (Más información acerca de los paquetes en la documentación oficial de Python si usted es un principiante de Python.)

recetas / settings.py: Ajustes  y configuración para este proyecto Django. Aqui haremos todas las configuración del proyecto Django y  todo acerca de las opciones de trabajo.

recetas / urls.py: Las declaraciones URL para el proyecto Django, es una "tabla de contenidos" de tu sitio Django. Puedes conocer más acerca de las URL en el despachador de URL.

recetas / wsgi.py: Un punto de entrada para WSGI compatibles con servidores web para hospedar su proyecto. Veremos la manera de publicar su proyecto en un servidor mas adelante.

El servidor de desarrollo

Vamos a verificar que todo va bien. Revise que este en directorio superior de recetas, y ejecute el comando

$ python manage.py runserver

Verá la siguiente salida en su terminal:

Validating models...

0 errors found
Django version 1.4.1, using settings 'recetas.settings'
Development server is running at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

Ahora vaya a su navegador favorito y escriba la dirección http://127.0.0.1:8000 y le aparcera esta pagina:

Hasta aquí esta primera parte, cualquier duda, escriba en los comentarios y así lo compartimos con todos. Hasta la proxima

Segunda Parte