Entradas

Mostrando entradas de diciembre, 2014

Aprendiendo Django parte 2

Imagen
Desarrollemos ahora una 'app' en django. La diferencia entre app y proyecto en django radica en algo tan simple como que una app puede estar en varios proyectos y un proyecto puede contener varias apps, pero un proyecto no puede contener a otros proyectos.
Lo primero creamos la app:
 python3 manage.py startapp agenda 

Esto nos crea una app en el proyecto con una serie de archivos. Nos vamos al archivo models.py para definir el modelo de datos que queremos.
Creamos los objetos Persona y Telefonos, teniendo este un enlace a Persona.
Añadimos 'agenda' al archivo settins.py en la parte de INSTALLED_APPS y ejecutamos el comando
 python manage.py makemigrations agenda   sudo python3 manage.py sqlmigrate agenda 0001
nos saldra por pantalla las consultas sql que se generaran y ahora para ponerlo en la DB ejecutamos
 python3 manage.py migrate 
Jugando con la shell
Pongamos el comando python3 manage.py shell y juguemos un poco para comprobar si todo salió bien:
>>>from agenda.model…

Primeros pasos con Django

Imagen
Hoy me apetecía probar a ver como era el tema de Django. De momento pongo los pasos que he seguido para instalarlo en Ubuntu 14.04 LTS

Paso 1: Instalar python

En mi caso Ubuntu trae la version estable 2.7, yo instale la 3, tal vez tengais que activar los repositorios no estables de ubuntu, porque se encuentra dentro del area 'developers' de ubuntu:

 sudo apt-get install -y python3 python-setuptools
 sudo easy_install3 pip 

pip es el sistema de instalacion de python, es un gestor de paquetes.

Paso 2: Instalar Django

sudo pip install Django
 sudo pip install Django --upgrade 
python3 -c "import sys; sys.path = sys.path[1:]; import django; print(django.__path__)"
python3 -c "import django; print(django.get_version())" 

Con eso tendremos instalado Django y las dos ultimas lineas nos dirán el lugar donde se encuentran los archivos de django (__path__) y la versión que instalamos, en mi caso la 1.7.1

Paso 3: Aprender Django

Ir a la carpeta donde queramos hacer un proyecto. Po…

PseudoCodigo ya tiene un editor

Imagen
Si hace unas semanas presentaba el lenguaje pseudoCodigo, en su versión compilada, ahora toca ver el editor que he programado en python3. De momento es algo simple, tan solo permite el coloreado de la sintaxis, pero es un paso de gigante para un lenguaje que, al menos, exista un editor para escribirlo y que este cuente con el coloreado de la sintaxis pertinente.
Para aquellos que quieran probar la version de prueba 0.0.1, aquí podrán ver el código:  https://github.com/arkadoel/pseudoCodeEditor

MeAlertas 0.1.0

Imagen
Por fin hoy he podido terminar la primera version de MeAlertas, un sistema de aviso semanal que fue desarrollado en JAVA inicialmente, cuando estaba en la portería de Metales Extruidos y cuya finalidad era recordar todas las acciones que debíamos hacer al cavo del día. 


Y como habitualmente sucede, ya esta subido el codigo python a github: https://github.com/arkadoel/AprendiendoPython/tree/master/MeAlertas

MeAlertas

Otro pequeño proyecto para ir aprendiendo mas cosas de python. En esta ocasión aprenderé lo siguiente:   -Uso de hilos(thread en python)
   -El como hacer un reloj que lance X tareas a una determinada hora.
   -Uso de mas controles Qt
   -Desarrollo de la conexión de la base de datos (de cara a probar si puedo hacer unos modulos tipo directORM como en C# y Java)
   -Como reproducir sonidos en windows y linux.El proyectoMeAlertas es un programa que desarrollé en 2011-2012 en Metales Extruidos, porque teníamos que recordar mas de 20 horas a las que debíamos hacer cosas. Los móviles que teníamos no daban de sí la flexibilidad que necesitábamos y por ello lo desarrollé, en java. En esta ocasión será en python.Aquí os dejo el enlace:
https://github.com/arkadoel/AprendiendoPython/tree/master/MeAlertas

Ejemplo ORM a mano (Java)

Mire el siguiente enlace: https://github.com/arkadoel/EjemploJAVAJDBCEn ese código puede ver como conectarse a una base de datos sqlite mediante Jdbc de java y generar ciertas clases que le permitan gestionarlo como si de un ORM (object relational model) se tratase. Una de las diferencia radica en su simplicidad y en que no necesita mas librerías externas para hacerlo, salvo las de jdbc obviamente.Esta es la versión de lo que llamo DirectORM, hace tiempo ya hice una aplicación para generar de manera automática las clases necesarias y ahora estoy viendo si es posible hacer una implementacion para python.