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?