Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/04/2012, 10:23
Avatar de minkweb
minkweb
 
Fecha de Ingreso: septiembre-2005
Mensajes: 443
Antigüedad: 18 años, 8 meses
Puntos: 14
Django, Buenas practicas en vistas

Buenas maestros, vengo con una pequeña duda a nivel de organización de las views en django

Resulta que estoy haciendo un sistema donde se debe registrar un apartamento y un usuario al mismo tiempo, he decidido dividir esto en 2 metodos registrar_usuario, registrar_apartamento.

Cuando se registra un apartamento se registra al mismo tiempo el usuario, ósea dentro de la funcion registrar_apartamento se llama a la funcion registrar_usuario, dejo un código algo pobre para hacer un ejemplo

Código:
def registrar_usuario(request):
	#creando usuario
	usuario = User.objects.create_user();
	return usuario

def registrar_apartamento(request):
	#creando usuario
	usuario = registrar_usuario(request)
	#registrando apartamento
	return HttpResponse('apartamento registrado')
Mas o menos así iría, así seria el funcionamiento..
Mi duda es la siguiente

la funcion registrar_usuario no devuelve un HttpResponse, pero
¿Que pasa si mas adelante necesito que lo haga?, por ejemplo, mas adelante necesito hacer un registro de usuario sin apartamento, tener otra función seria redundar el código
¿La forma correcta de hacerlo es con un if, si un parámetro es True retorne HttpResponse si es False retorne un Diccionario?

Con esto me refiero a que, en views.py están las funciones que "renderizan" los templates, pero las funciones que tienen mas lógica o procesos mas pesado donde deberían ir?
__________________
Juegos
Juegos iphone