‘ django ’ category archive

Version 1.0 de Django, para Septiembre

June 12, 08 by Tomcask

Muy rápido, Django 1.0 roadmap and timeline

Tickets ineludibles

  • ‘newforms-admin’ esta casi terminado, ya hemos empezado a hablar de unificar el trunk, para su publicacion en la versión 1.0
  • Eliminar completamente ‘oldforms’.
  • Hacer Django 100% WSGI compatible.

Liberando la versión 1.0 para el 2 de septiembre del 2008. guauuuuu,

Ale a seguir desarrollando con nuestro framework favorito y vemos que tiene seguimiento y no para de crecer…

Django avanza imparable, recibe soporte en Google App Engine

April 08, 08 by Tomcask

Pues si, revisando mis rss, me encuentro con el post de Joe Heck sobre Django and the google App Engine.

Empieza a medio entender lo que esta diciendo y empiezo a alucinar, resulta que google ha lanzado un nuevo servicio llamado App Engine (no se si hace mucho hace poco), en el cual te permite ejecutar tus aplicaciones en la infrastuctura de google.

Esto ya de por si es bastante bueno, pero cuando he empezado a leer un poco mas en la documentacion, un vistazo rápido. En la sección de Articulos, me encuentro con ejecuta Django en App Engine, leñe!!!!.

Haze poco que he comenzado con Django, pero esto para mi demuestra una apuesta clara y publica sobre un framework web, esto solo va a ser más que beneficioso, cuantos mas seamos mas nos reiremos y mas ayuda encontraremos.

Que google en sus faq recomiende claramente a django es alucinante.

Lo mismo que le ha pasado Joe, rápidamente e intentado apuntarme a ver si colaba y no ha habido suerte, solo toca esperar e ir leyendo la documentación para valorar posibles cambios de infraestructura en el proyecto que esto haciendo.

Tengo la duda sobre las limitaciones del servicio lo estoy repasando todavia, a ver que encuentro, ¿alguien sabe algo sobre esto?.

Lo comentan tambien, Erro500 y highscalability

Modelo de datos de Django - I

March 17, 08 by Tomcask

Otra de mis traducciones libres ;-)
Fuente: http://www.djangoproject.com/documentation/model-api/

Modelo de datos

El modelo es único, es el código definitivo de los datos sobre tu información. Contiene los campos esenciales y los comportamientos de la información que almacenas. Generalmente cada modelo mapea a una uncia tabla de base de datos.

Básicamente

Cada modelo es una clase python que es una subclase de django.db.models.Model. Cada atributo del modelo representa un campo de la Base de Datos. El Metadata del modelo (información sin campo) se incluye en una clase interna llamada Meta. El Metadata usado por el site de Administración de Django se incluye en una clase interna llamada Admin. Con todo esto, Django proporciona una API de Acceso a Base de datos generado de manera automática, esto esta explicado en la Database API reference

Un documento adjunto a este es el repositorio oficial de ejemplos de modelo de datos. En el código fuente de Django estos ejemplos se encuentran en el directorio test/modeltest.

Ejemplo rápido.

En este ejemplo se hace el modelo de Persona, con los atributos first_name y last_name:

PYTHON:
  1. from django.db import models
  2.  
  3. class Person(models.Model):
  4.     first_name = models.CharField(max_length=30)
  5.     last_name = models.CharField(max_length=30)

first_name y last_name son campos del modelo. Cada campo esta especificado como un atributo de clase y cada atributo mapea una columna de la base de datos.

El anterior modelo de Person la orden de create table sera asi:

PYTHON:
  1. CREATE TABLE myapp_person (
  2.     "id" serial NOT NULL PRIMARY KEY,
  3.     "first_name" varchar(30) NOT NULL,
  4.     "last_name" varchar(30) NOT NULL
  5. );

Algunas notas tecnicas:

  • El nombre de la tabla, myapp_person, deriva automaticamente del metadata puede ser sobreescrito, mirar Table names a continuación.
  • El campo "id" es añadido automaticamente, pero este comportamiento puede ser sobreescrito, mirar Automatic primary key fields a continuación.
  • La sentencia SQL CREATE TABLE en este ejemplo esta formateada usando PostgreSql syntax, pero es digno de mención decir que Django usa Sqls Adaptados a la Base de datos especificada en tu fichero de configuración.

Campos

La parte más importante del modelo, y la única parte requerida por el modelo es la lista de campos definida. Los campos son especificados como atributos de clase.
Ejemplo:

PYTHON:
  1. class Musician(models.Model):
  2.     first_name = models.CharField(max_length=50)
  3.     last_name = models.CharField(max_length=50)
  4.     instrument = models.CharField(max_length=100)
  5.  
  6. class Album(models.Model):
  7.     artist = models.ForeignKey(Musician)
  8.     name = models.CharField(max_length=100)
  9.     release_date = models.DateField()
  10.     num_stars = models.IntegerField()

Restricciones de nombre.

Django solo tiene dos restricciones en el nombre de los campos del modelo:
-

  • Un campo no se puede llamar como una palabra reservada de Python, porque daria un resultado de Syntax Error Python :
    PYTHON:
    1. class Example(models.Model):
    2.     pass = models.IntegerField() # 'pass' is a reserved word!

  • Un campo no puede contener mas de un guion bajo por linea, Debido a la forma de trabajar Django con la sintaxis de las querys.
    PYTHON:
    1. class Example(models.Model):
    2.     foo__bar = models.IntegerField() # 'foo__bar' has two underscores!

Estas son las limitaciones para trabajar, tenga en cuenta también que los nombres de los campos no tienen que coincidir necesariamente con el nombre de la columna de la base de datos.
Mirar db_column a continuación.

Tipos de Campo

Cada campo el modelo debe ser una instancia apropiada de un atributo de una clase, Django utiliza los tipos de atributo de clase para determinar unas pocas cosas:

  • El tipo de la columna de la BD (INTEGER, VARCHAR)
  • El tipo de objeto a usar en la interface de administración de django ("Text",
     


    Hace poco descubri el running, basicamente debido a mi exceso de culo...

    Un amigo me presento al señor ipod con NikePlus y soy un hombre nuevo, gordo todavía pero por poco



    Publi:  Libros que leo, he leído o quiero leer,   ¿me lo regalas?