martes, 22 de enero de 2013

Django guía ultra rápida (en proceso)

Considero que hay una infinidad de tutoriales por la red relacionados con Django así que me limitare a poner referencias que me vayan sido utiles así como algunos comandos que sean los que más voy utilizando, espero les sea de utilidad, igual se aceptan sugerencias y correcciones :)

TERMINAL

Crear Proyecto
$ django-admin.py startproject [nombreproyecto]

Crear App
$ python manage.py startapp [nombreapp]

Validar Modelos
$ python manage.py validate

Sincronizar base de datos
$ python manage.py syncdb

Crear superusuario
$ python manage.py createsuperuser

Correr el Servidor
$ python manage.py runserver 192.168.0.1:80
NOTA: La ip y el puerto son opcionales si no se especifican por omisión correo en 127.0.0.1:8000



CARACTERES Y FORMATOS

Codificación UTF8
Al inicio del archivo colocar
# -*- encoding: utf-8 -*-



MODELOS
Ejemplo archivo: models.py

from django.db import models
from django.contrib.auth.models import User

class Refs():
    sexo = ((‘F’,‘Femenino’),(‘M’,‘Masculino’))
    estado_civil = ((‘S’,‘Soltero’),(‘C’,‘Casado’),(‘U’,‘Unión Libre’),(‘D’,‘Divorciado’),(‘V’,‘Viudo’))

class Persona(models.Model):

    usuario = models.ForeignKey(User)
    nombre = models.CharField(max_length=100)
    clave = models.IntegerField(verbose_name=u’La Clave’)
    municipio = models.ForeignKey(Municipio)
    tipo = models.ForeignKey(Tipos,null=True,blank=True)
    cursos = models.ManyToManyField(Curso)
    universidades = models.ManyToManyField(Universidades, through=‘Uni_Per’)
    activo  = models.BooleanField(default=True)
    obs = models.TextField(max_length=500)
    sexo = models.CharField(max_length=1, choices=Refs.sexo, default='F')


    def __unicode__(self):
        return (u’ %s >> %s’) % (self.nombre, self.tipo)

    class Meta:
        verbose_name=u'Descripción Singular del Modelo'
        verbose_name_plural=u'Descripción Plural'

class Curso(models.Model):
    nombre = models.CharField(max_length=50)

class Universidad(models.Model):
    nombre = models.CharField(max_length=50)

class Uni_Per(models.Model):
    persona = models.ForeignKey(Persona)
    universidad = models.ForeignKey(Universidad)
    promedio = models.DecimalField(decimal_places=2,max_digits=4)
    titulacion = models.DateField(verbose_name=u’Fecha de Titulación’)



ADMINISTRADOR DE DJANGO
Ejemplo archivo admin.py
 

Agregar un modelo al admin

from django.contrib import admin
from catalogos.models import *
admin.site.register(Universidad)
admin.site.register(Persona)
admin.site.register(Curso)



VISTAS
Ejemplo de un archivo views.py

from django.http import HttpResponse
import datetime

def fecha_actual(request):
    now = datetime.datetime.now()
    html = "El día de hoy es %s." % now
    return HttpResponse(html)




URL
Ejemplo de un archivo urls.py, que tiene activado además el admininistrador de Django.

from django.conf.urls import patterns, include, url

# Uncomment the next two lines to enable the admin:
from django.contrib import admin
admin.autodiscover()

 
urlpatterns = patterns('',

    # Vista inicial
    url(r'^$', 'miapp.views.fecha_actual', name='fecha_actual'),


    # Uncomment the next line to enable the admin:
    url(r'^control/', include(admin.site.urls)),
)





Otras utilerías
Usar bootstrap en Django
El API Form de Django


 

No hay comentarios:

Publicar un comentario