jueves 13 de octubre de 2011

Django: Usar un FormWizard en una Vista


En caso de que se deseara incluir un formulario creado con FormWizard en una vista (para agregarle un @login_required por ejemplo), podríamos crear una vista como la siguiente:
@login_required
def view_form_wizard(request):
    
    # Ajustamos un diccionario con datos iniciales
    # En este caso, estamos pre-llenando informacion
    # solo para el 1er formulario.
    initial = {0: {'first_name': request.user.first_name,
                   'last_name': request.user.last_name,
                   'email': request.user.email,
                  },
              }

    # Se crea el FormWizard
    form = EditFormWizard([FirstForm, SecondForm,], initial=initial)

    # Llamamos al FormWizard, enviándole el context y el request
    return form(context=RequestContext(request), request=request)
Y en nuestro archivo urls.py, llamos a esta vista, como siempre.

>> Visto en: Ten.Ynottony