Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/05/2014, 15:24
Avatar de Restart
Restart
 
Fecha de Ingreso: marzo-2009
Mensajes: 84
Antigüedad: 15 años, 1 mes
Puntos: 0
Pregunta django basico directorios

Estoy revisando la documentacion oficial con respecto a los forms en django en esta pagina:

https://docs.djangoproject.com/en/dev/topics/forms/

logre en parte crear el form basico de contacto, las vista, urls y todo eso. Funciona todo menos la redireccion a la pagina cuando se envia el formulario con exito:

Mi duda principalmente esta en estos dos codigos:

Esta es la vista:

Código:
from django.shortcuts import render
from django.http import HttpResponseRedirect

def contact(request):
    if request.method == 'POST': # If the form has been submitted...
        # ContactForm was defined in the previous section
        form = ContactForm(request.POST) # A form bound to the POST data
        if form.is_valid(): # All validation rules pass
            # Process the data in form.cleaned_data
            # ...
            return HttpResponseRedirect('/thanks/') # Redirect after POST
    else:
        form = ContactForm() # An unbound form

    return render(request, 'contact.html', {
        'form': form,
    })
Mi duda concreta es aqui:

Código:
return HttpResponseRedirect('/thanks/') # Redirect after POST
¿Como puedo preparar bien ese directorio y como podria mostrar alguna informacion en dicho directorio. Quizas lo optimo seria mostrar un mensaje en un template thanks.html, pero ya que el codigo esta asi me surgio la idea de como usar bien los directorios al momento de redireccionar.

Lo mismo ocurre en el template:

Código:
<form action="/contact/" method="post">{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Submit" />
</form>
El action envia a un directorio contact. En resumen el tema de los directorios me tiene confundido porque hasta el momento yo solo creo el directorio de mi app y dentro el directorio de los templates y el resto solo he trabajado con vistas y templates. Pero cuando tengo que crear otro directorio, ahi ignoro que es lo que debo hacer.

Por ultimo, yo solo tengo creado mi formulario en forms.py y cuando yo ingreso a:

http://127.0.0.1:8000/myapp/ django me muestra automaticamente el formulario: ¿como django sabe que tiene que mostrar eso?
o mejor dicho
¿en que parte esta configurado para que me muestre eso por defecto?